![](/img/trans.png)
[英]Usage of the boolean java.util.ArrayList.contains(Object o) method. Determining which two objects are equal
[英]Java Object equal method and Boolean value
我有以下代码片段
format(Object obj) {
if(obj.equals("false")) {
buffer.append("No");
} else {
buffer.append("Yes");
}
}
调试时,我验证obj变量的值是一个值为“false”的布尔对象,但是if子句总是转到Yes指令。 你能帮我理解为什么吗?
当您运行obj.equals("false")
您试图将obj
(一个Boolean
)与"false"
(一个String
。
因此,您可以尝试先将Boolean
转换为字符串:
if(obj.toString().equals("false")){
buffer.append("No");
} else {
buffer.append("Yes");
}
或者,更好的是,正如@Nexevis 所建议的那样,您可以将obj
直接与Boolean
进行比较:
if(obj.equals(false)){
buffer.append("No");
} else {
buffer.append("Yes");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.