描述:Boolean(String s),如果 String 參數不為 null 且在忽略大小寫時等于 "true",創建一個表示 true 值的 Boolean 對象,如Boolean b = new Boolean("ok"),為 false。------------------------------在 Boolean b = new Boolean("ok")中,b的值不是 true 嗎?上面的描述矛盾嗎
2 回答

LEATH
TA貢獻1936條經驗 獲得超7個贊
先說結論:false
public Boolean(String s) {
this(parseBoolean(s));
}
會先去調用parseBoolean
,再調用另一個構造器方法:
public Boolean(boolean value) {
this.value = value;
}
那好,接下看parseBoolean
代碼:
public static boolean parseBoolean(String s) {
return ((s != null) && s.equalsIgnoreCase("true"));
}
所以,除非構造器參數為"TRUE"
或者"true"
或者TRue
等,否則結果將都為false
,包括"ok"
這個字符串
添加回答
舉報
0/150
提交
取消