2013-02-06 13 views
0
  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; 
     } 

这是我的hang子手主要方法的最后部分。我目前有两个数组正在运行。第一个是complete [],它包含一个输入的单词,它被分成逐个字符的子字符串。我拥有的第二个数组是“猜测”字数组。 例如如果单词是fish,complete []将包含[f,i,s,h},而wordTemp将包含[f, - , - , - ],如果我只是猜到了f。。等量表演真的好笑

但是,当我去比较这两个数组的元素以查看用户是否已完成挑战时,我立即跳出java。以下是它如何结束:

经过第一次猜测后,整个事情跳过了。我怀疑.equals没有工作,但我能做些什么来取代它?

回答

9
if (n.equals(m)); 

应该

if (n.equals(m)) 

删除分号。

这是自动格式化IDE非常好的原因之一,并且就我个人而言,这也是我喜欢埃及式括号的原因之一 - if (n.equals(m)) {与同一行上的开放式支架。像这样的小事情使语法问题像多余的分号更明显。

+4

+1。埃及风格括号总是有助于避免语法错误。 – DankMemes