为什么报错了
public class Lian { public static void main(String[] args){ String foo="blue"; Boolean[] bar = new Boolean [1]; if (bar[0]) { foo ="green"; } System.out.println(foo); }}
public class Lian { public static void main(String[] args) { String foo="blue"; Boolean[] bar = new Boolean [1]; bar[0]=new Boolean("false");//这要初始化一下。(或bar[0]=new Boolean("true");) if (bar[0]) { foo ="green"; } System.out.println(foo); }}
[解决办法]
搞了半天才看出来是什么了
Boolean是应用数据类型 系统自动初始化null
你把Boolean换成boolean试试看
boolean是基本数据类型 那么默认值就是false 就不会报错了
局部变量中变量不会自动初始化的 但是用new的基本变量会自动初始化
Boolean是它的封装类,和其他类一样。
Boolean b = new Boolean("false“);
public Boolean(String s) {
this(toBoolean(s));
}
[解决办法]
boolean[] bar = new boolean[1];