请看下面的列子
Boolean.getBoolean()解析
public class BooleanGet{
> public static void main (String[] args){
> String s1 = "true";
> String s2 = new String( "true");
> String s3 = "true";
> System.setProperty(s1,"true");
> System.setProperty(s2,"true");
> system.out.println(Boolean.getBoolean(s1));//true
> system.out.println(Boolean.getBoolean(s2));//true
> system.out.println(Boolean.getBoolean(s2));//false
> }
> }
返回fasle的原因:
getBoolean(String name) :当且仅当以参数命名的系统属性存在,且等于 “true” 字符串时,才返回 true。
当且仅当以参数命名的系统属性存在的方法:
System.setProperty(s1,“true”);
System.setProperty(s2,“true”);
这样返回就为true了。
将string转成boolean的正确做法
请看代码:
String s = “true”;
System.out.println(Boolean.getBoolean(s)); //false
System.out.println(Boolean.parseBoolean(s)); //true
记录一下,防止掉坑。