java中null+““和null+null会等于什么鬼呢?
在java中,null+””会等于什么鬼?
null+””=?
null+null又会等于什么鬼呢?
null+null=?
直接上代码和截图。
注意:看如下代码,看看null+null等于什么?
System.out.println(null + null);//报错,连编译都通不过
String n = null;
String m = null;
System.out.println(n + m);//nullnull
以下代码,大家也可以亲自去测试一下,大家自己多动手去写,印象会更深刻。
public static void main(String[] args) {
//null只能赋值给引用数据类型的变量,不能赋值给基本数据类型的变量
//下面一行代码语法报错,连编译都通不过,因为得益于Eclipse的强大,Eclipse会帮助我们智能的检查语法
// int a = null;
Integer b = null;
//下面一行代码欺骗过了Eclipse的语法检查,变相的把null赋值给了基本数据类型的变量
//int c = b;//报错NullPointerException(是在程序运行时报的错,但是编译可以通过,即编译时不会报错,运行时才会报错)
System.out.println(b); //null
// System.out.println(c);
Integer d = new Integer(97);
String str1 = null;
System.out.println(str1);//null
System.out.println(str1 + "");//null
String str2 = null;
System.out.println((str2 + "").length());//4
String str3 = null;
System.out.println(str3 + 567);//null567
String str4 = null;
System.out.println((str4 + 567).length());//7
String str5 = null;
String str6 = null;
System.out.println(str5 == null);//true
System.out.println(str6 == null);//true
String str7 = str5 + str6;
System.out.println(str7);//nullnull
System.out.println(str7 == null);//false
System.out.println(str7.length());//8
String str8 = null;
System.out.println(str8 + 666);//null666
System.out.println(str8 + 999.88);//null999.88
System.out.println(str8 + b);//nullnull
System.out.println(str8 + true);//nulltrue
System.out.println(str8 + false);//nullfalse
System.out.println(str8 + d);//null97
System.out.println(str8 + 'a');//nulla
System.out.println("**************");
String s1 = null;
System.out.println("".equals(s1));//false
//报错java.lang.NullPointerException
// System.out.println(s1.equals(""));
System.out.println("**************");
String s2 = null;
System.out.println("null".equals(s2));//false
System.out.println("".equals(s2));//false
System.out.println("null".equals((String)s2));//false
System.out.println(((String)s2) == null);//true
System.out.println(s2 == null);//true
System.out.println("**************");
String s3 = "";
String s4 = "null";
System.out.println(s3.equals(null));//false
System.out.println(s3.equals((String)null));//false
System.out.println(s4.equals(null));//false
System.out.println(s4.equals((String)null));//false
System.out.println("".equals(null));//false
System.out.println("".equals((String)null));//false
String str9 = "江西省赣州市于都县";
System.out.println(str9 + 6666);//江西省赣州市于都县6666
System.out.println("==============");
String s5 = null;
String s6 = null;
System.out.println(s5 == s6);//true
System.out.println(((String)s5) == ((String)s6));//true
System.out.println("##################");
// System.out.println(null); //语法报错
System.out.println((String)null);//null
//下面一行代码会报异常,java.lang.NullPointerException
System.out.println(((String)null).length());
}
运行结果如下:
还没有评论,来说两句吧...