gpt4 book ai didi

java - Android 中 "IF STATEMENT"的行为非常奇怪

转载 作者:行者123 更新时间:2023-12-01 08:12:54 27 4
gpt4 key购买 nike

有人见过以下语句运行错误吗?

String BloodyHell = "Unbelievable";
if (BloodyHell == BloodyHell) >> false

虽然我没有得到该死的 hell ,但得到的是:|-,-||o,-||-,o||o,o|XXXX .

但这些都不是真的。在调试时,确切的情况仍然是错误的。

请有人帮帮我。这是 fragment :

public String doStats()
{
String[] pattern = splitPattern();
for (int i = 0; i < pattern.length; i++)
{
if (pattern[i] == "|-,-|")
frontClosed++;
if (pattern[i] == "|o,-|")
left++;
if (pattern[i] == "|-,o|")
right++;
if (pattern[i] == "|o,o|")
frontOpened++;
if (pattern[i] == "XXXX")
noFace++;
}
}

enter image description here

最佳答案

在 Java 中,您应该使用 String#equals方法来比较字符串值而不是 ==== 运算符比较对象引用以查看它们是否是同一个对象,这就是为什么您不断得到 false 的结果。即使字符串的内容相同,对象引用也是不同的。

if (pattern[i].equals("|-,-|"))

关于java - Android 中 "IF STATEMENT"的行为非常奇怪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15914795/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com