【发布时间】:2020-05-28 05:05:14
【问题描述】:
我有一个字符串变量,其值通常为“0”,但通常也不是“0”。
每当我更新此值时,都需要对其进行解析。 我知道这个字符串,当它为零时它无法解析。
但是我不明白为什么比较两个字符串的 if 语句不起作用,它背后一定有一些我不明白的逻辑,如果有人能解释我所缺少的,我将不胜感激。
我已经通过使用.equals("0") 解决了这个问题,但我不知道为什么这种方法有效而另一种方法无效。提前谢谢你。
if (x == "0") {
integer = 0;
} else {
integer = Integer.parseInt(x);
}
【问题讨论】:
-
你现在的方式是参考比较,但你想要价值比较。
-
@SPlatten Java != JavaScript
-
因为 "==" 比较 object references,而不是字符串值。你可以在这里阅读更多:geeksforgeeks.org/difference-equals-method-java
标签: java android-studio if-statement