任何人都看過下面的語句運行false?Android中的「IF語句」中的非常奇怪的行爲
String BloodyHell = "Unbelievable";
if (BloodyHell == BloodyHell) >> false
雖然不是該死的,我有:|-,-|
或|o,-|
或|-,o|
或|o,o|
或XXXX
。
這些都不是真。雖然調試確切的東西仍然是錯誤的。
有人請幫助我在這裏。這裏的片段:
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++;
}
}
http://stackoverflow.com/a/4700501/1052673 – 2013-04-10 00:16:47
你需要小心你所做的廣泛的例子。 'BloodyHell == BloodyHell'將永遠*爲真:http://ideone.com/ag6A29 – Eric 2013-04-10 00:18:53
我相信他們在Java書籍和教程中討論的第一件事是關於使用equals()並解釋原因爲了它?回覆。問題海報 – 2013-04-10 00:22:04