您好,提问者:
1、int类型是无法定义成null的。
2、Integer也就是int的包装类,可以定义成null的。
3、Integer i = null;是没有在内存中开辟空间,没有存放任何东西。
4、String str = ""; 这个的意思是在内存中开辟了空间,存放的内容为""。
首先int是基本数据类型,没有int a = null之说!
举例:String str1;和String str2 = null的区别;
String str1;
String str2 = null;
System.out.print(str1);// 编译都过不去,编译报错:没有初始化
System.out.print(str2);// 运行过不去,运行异常NullPointerException,说明编译过去了,说明str2被初始化了,初始化是什么?你能懂的初始化一般就是new String(),new String()就是分配了一个有地址的内存,那这个 null就是一个没有地址没有值的地方,他有,有的是什么都没有。
Java中int 是不能赋予null值的,null是字符串默认值 ,但是Integer就可以,Integer a = null;int
直接不赋值也会有个初始值为0。。