- String s1 = "false";
- String s2 = "true";
- String s3 = "fAlSe";
- String s4 = "TrUe";
- String s5 = "true_a";
以上的string 分别用
- 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);
- 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。
-
将字符串参数解析为 boolean 值。如果 String 参数不是
-
-
这次的转换就可以了。。。。结果分别是:false , true , false , true , false
所以,转换时就直接用 parseBoolean 好了
原文链接:http://blog.csdn.net/tangcaijun/article/details/8652174