我想将String转换为boolean,但是Output始终为false。a=true;b=true;c=true;String zOrginal="(a^b)|c";boolean z= Boolean.parseBoolean(zOrginal);out.println(z);输出始终为假,
3 回答
![?](http://img1.sycdn.imooc.com/54584c9c0001489602200220-100-100.jpg)
慕的地8271018
TA贡献1796条经验 获得超4个赞
在Java中,该parseBoolean
方法将字符串参数解析为布尔值。如果string参数不为null且等于大小写(忽略大小写),则返回的布尔值表示true “true”
。
因此,如果您解析"(a^b)|c"
它,将会得到false
它不会评估表达式的结果。
![?](http://img1.sycdn.imooc.com/54584cb50001e5b302200220-100-100.jpg)
江户川乱折腾
TA贡献1851条经验 获得超5个赞
这是以下代码的源代码Boolean.parseBoolean:
public static boolean parseBoolean(String b)
{
return "true".equalsIgnoreCase(b) ? true : false;
}
此函数唯一返回的时间true是传递给它的字符串是否为“ true”(尽管有大小写)。
如果要检查字符串是否为非空,请使用String.isEmpty方法。如果您想实际“评估”字符串,那并不是那么简单...但是您可能想要通读Java中是否有eval()函数?。
添加回答
举报
0/150
提交
取消