创建 Boolean 对象
在Java中,我们可以使用Boolean类的valueOf()和parseBoolean()方法来创建Boolean对象或解析字符串为boolean值。
valueOf()方法 创建布尔对象
返回一个表示指定boolean值的Boolean实例,如果指定的boolean值为true,则此方法返回Boolean.TRUE:如果为false,则返回Boolean.FALSE。如果不需要新的Boolean实例,则应优先使用此方法,而不是构造方法Boolean(boolean),因为此方法有可能大大提高空间和时间性能。
✍方法声明
public static Boolean valueOf(boolean b)
- 🪐返回值:一个表示b的Boolean实例。
下面代码通过valueOf()方法返回boolean b的Boolean实例。
public static void main(String[] args) {
boolean bool1 = true;
Boolean b = Boolean.valueOf(bool1);
System.out.println(b);
}
✍方法声明
public static Boolean valueOf(String s)
- 📥入参:s为字符串,对大小写不敏感。
- 🪐返回值:该字符串所表示的Boolean值。
返回一个指定参数值的Boolean实例。
public static void main(String[] args) {
// 解析 true 字符串
boolean bool1 = Boolean.valueOf("true");
boolean bool2 = Boolean.valueOf("True");
boolean bool3 = Boolean.valueOf("TRUE");
// 解析不是 true 字符串
boolean bool4 = Boolean.valueOf("False");
boolean bool5 = Boolean.valueOf("1");
boolean bool6 = Boolean.valueOf("Java");
// 解析空字符串
boolean bool7 = Boolean.valueOf("");
boolean bool8 = Boolean.valueOf(null);
System.out.println(bool1);
System.out.println(bool2);
System.out.println(bool3);
System.out.println(bool4);
System.out.println(bool5);
System.out.println(bool6);
System.out.println(bool7);
System.out.println(bool8);
}
true
true
false
false
false
false
false
parseBoolean() 将字符串解析成boolean值
上面的 valueOf(String str) 方法内部使用的是 parseBoolean()方法。
该方法将字符串参数解析为boolean值。如果String参数不是null且在忽略大小写时等于‘true’,则返回的boolean表示true值。
✍方法声明
public static boolean parseBoolean(String s)
- 📥入参:s为包含要解析的布尔表达式的String。
- 🪐返回值:String参数所表示的布尔值。
public static void main(String[] args) {
// 解析 true 字符串
boolean bool1 = Boolean.parseBoolean("true");
boolean bool2 = Boolean.parseBoolean("True");
boolean bool3 = Boolean.parseBoolean("TRUE");
// 解析不是 true 字符串
boolean bool4 = Boolean.parseBoolean("False");
boolean bool5 = Boolean.parseBoolean("1");
boolean bool6 = Boolean.parseBoolean("Java");
// 解析空字符串
boolean bool7 = Boolean.parseBoolean("");
boolean bool8 = Boolean.parseBoolean(null);
System.out.println(bool1);
System.out.println(bool2);
System.out.println(bool3);
System.out.println(bool4);
System.out.println(bool5);
System.out.println(bool6);
System.out.println(bool7);
System.out.println(bool8);
}
true
true
false
false
false
false
false
📝总结
在需要将boolean原始类型值转换为Boolean对象时,应使用Boolean.valueOf(boolean b)方法。
在需要从字符串创建Boolean对象时,应使用Boolean.valueOf(String s)方法,但要确保字符串内容为‘true’或‘false’。
在需要将字符串解析为boolean原始类型值时,应使用Boolean.parseBoolean(String s)方法,同样要确保字符串内容为‘true’或‘false’。
尝试使用valueOf()或parseBoolean()方法解析无效的字符串都会是 ‘false’。