最近在做一个小案例的时候,需要将一个String类型的数据转换成Boolean类型,并且在String类型的数据不是"true"或"false"时,抛一个数据转换异常,但是调用了Boolean.valueOf(string)时,发现无论怎样,异常总不会抛出。仔细扫了一遍API文档之后发现这个方法的解释:“返回一个布尔值,其值由指定的字符串表示。 如果字符串参数不为 null 并且忽略大小写等于字符串“ true” ,则返回的布尔值为 true。 否则,返回一个 false 值,包括 null 参数。”
意思是无论输入什么都不会抛异常,如果想要抛出异常的话,可以自己抛出一个异常:代码如下,可供参考:
String s1 = “true”;
String s2 = “false”;
boolean bool = false;
try {
if (string.compareToIgnoreCase(s1) == 0) {
bool = true;
} else if(string.compareToIgnoreCase(s2) == 0){
bool = false;
} else {
throw new Exception();
}
} catch (Exception e) {
System.out.println(“格式转换异常”);
} finally {
return bool;
}
Java学习笔记:Boolean.valueOf()方法的使用
最新推荐文章于 2025-03-20 20:27:11 发布