for (int y = 0; y < stuff.length(); y++)
{
String n = wordTemp[y];
String m = complete [y];
System.out.println(n + m);
if (n.equals(m));
{
fin = fin + 1;
}
}
if (fin == stuff.length())
{
System.out.println("COMPLETED! Play again later.");
return;
}
这是我的hangman main方法的最后一部分。我目前有两个阵列在运行。第一个是完整的[],其中包含一个被逐字符串子字符串切换的输入字。我拥有的第二个数组是“猜测”字数组。 例如如果单词是fish,则完成[]将包含[f,i,s,h},而如果我猜测f,则wordTemp将包含[f, - , - , - ]。
然而,当我去比较这两个数组的元素以查看用户是否完成了挑战时,我跳出了java。以下是它最终的结果:
在第一次猜测之后,整个事情就会消失。我怀疑.equals不起作用,但我该怎么做才能取代它?
答案 0 :(得分:9)
if (n.equals(m));
应该是
if (n.equals(m))
删除分号。
这是自动格式化IDE很好的部分原因,而且个人而言,这也是我喜欢埃及式括号的原因之一 - if (n.equals(m)) {
同一行的开放式括号。像这样的小事使得额外的分号等语法问题变得更加明显。