今天偶然想把string 類型轉換成 boolean 類型 ,查了下api文檔,發現文檔似乎有點不太對經。。。
嗯,就直接發測試代碼吧,廢話懶得說了。。。
1
2
3
4
5
|
String s1 = "false" ; String s2 = "true" ; String s3 = "fAlSe" ; String s4 = "TrUe" ; String s5 = "true_a" ; |
以上的string 分別用
1
2
3
4
5
|
Boolean.getBoolean(s1); Boolean.getBoolean(s2) Boolean.getBoolean(s3); Boolean.getBoolean(s4); Boolean.getBoolean(s5); |
以上5個的返回的值都為 false
api文檔是這樣說的:
getBoolean
public static boolean getBoolean(String name)
當且僅當以參數命名的系統屬性存在,且等于 "true" 字符串時,才返回true。(從 JavaTM 平臺的 1.0.2 版本開始,字符串的測試不再區分大小寫。)通過getProperty 方法可訪問系統屬性,此方法由System 類定義。
如果沒有以指定名稱命名的屬性或者指定名稱為空或 null,則返回 false。
但結果我也不知道為什么會這樣的咧。。。
嗯,結果都是false,那我們要轉換怎么辦呢,沒事,還有另外一個方法 叫 Boolean.parseBoolean(string s);
1
2
3
4
5
|
Boolean.parseBoolean(s1); Boolean.parseBoolean(s2) Boolean.parseBoolean(s3); Boolean.parseBoolean(s4); Boolean.parseBoolean(s5); |
api文檔是這樣寫的:
public static boolean parseBoolean(String s)
將字符串參數解析為 boolean 值。如果 String 參數不是null 且在忽略大小寫時等于"true",則返回的 boolean 表示 true 值。
示例:Boolean.parseBoolean("True") 返回true。
示例:Boolean.parseBoolean("yes") 返回 false。
這次的轉換就可以了。。。。結果分別是:false , true , false , true , false
所以,轉換時就直接用parseBoolean好了
以上就是小編為大家帶來的java string類型轉換boolean類型的方法全部內容了,希望大家多多支持服務器之家~