关于null可以赋值给String类型变量的问题。

为什么null可以赋值给String类型变量,结果为null
而赋给其他类型变量会说错误: 不兼容的类型: <空值>无法转换为int
int id1 = null;
^

String是个对象,不是基础数据类型。内部是字符串数组

img


除了这8种,null可以赋值给任何类型;
你偏偏要选这亿亿分之8的类型去试

int的默认值是0

你可以用Integer它可以赋值为null 它是对象 且默认值就是null 而int是基本数据类型 它默认值是0