2012-01-15 19 views
0

私は、ゲームがオセロにとって合法であるかどうかを確認しようとしています。私は、それは私が 'エラーを解決することはできません'を確認する変数を使用すると、各ループと一度(一度)のために使用しています。私はこれが起こる場所を太字にしました。誰も助けることができますか? (はい、私は私が最初にこのエラーを取り除くためにしようとしている、コードがまだ終了していないことを知っている。)このコードで「解決できません」というエラーが表示されるのはなぜですか?

public boolean isLegal(Location loc1) 
{ 
    String currentColor = currentPlayer.getColor(); 
    boolean isLegal = false; 
    int row = loc1.getRow(); 
    int col = loc1.getCol(); 
    if(board.isValid(loc1)) 
    { 
     if(board.get(loc1) == null) 
     { 
      for(Location tempLoc : board.getValidAdjacentLocations(loc1)) 
      { 
       if(!board.get(tempLoc).equals(currentColor)) 
       { 
        int tempRow = tempLoc.getRow(); 

        if((row != tempLoc.getRow()) && (col == tempLoc.getCol())) 
        { 
         //count up column 
         if(**tempLoc.getRow()** < row) 
         { 
          for(int i = row; i > 1;) 
          { 
           Location tempLoc2 = new Location(i-2, col); 
           if(!board.get(tempLoc2).equals(currentColor)) 
           { 
            i--; 
           } 
           else 
           { 
            i=-1; 
            isLegal = true; 
           } 
          } 
         } 
         //count down column 
         else 
         { 
          for(int i = row; i < 6;) 
          { 
           Location tempLoc2 = new Location(i+2, lcol); 
           if(!board.get(tempLoc2).equals(currentColor)) 
           { 
            i++; 
           } 
           else 
            i=9; 
           isLegal = true; 
          } 
         } 
        } 
        else if(col != tempLoc.getCol() && row == tempLoc.getRow()) 
        { 
         //count left/right row 
         if(col > tempLoc.getCol()) 
         { 

         } 
         else 
        } 
        else 
        { //count up/right & down/left diag 
         if(1!=0) 
         { 

         } 
         //count up/left & down/right diag 
         else 
        } 
       } 
      } 
     } 
    } 
    return isLegal; 
} 
+0

おそらく2つのコンパイルエラーが下部の空の 'else'ステートメントにあります。これらを修正すれば何か変わるのですか? (例えば、それらの後ろに{}を置くことによって)コンパイラは、あなたのメソッドの中に何が含まれているのか混同することがあります。 –

+0

それは実際にその問題を解決しました!ありがとうございました!なぜ私はそれを考えなかったのだろうか... ^^; – frozenxdreamer

+0

@RussellZahniserあなたはそれを受け入れるためにこれを答えとして掲示するべきです。 –

答えて

0

あなたのコードの下部にある身体のない「他」の文は混乱していますコンパイラは何をループ内部と見なしますか。そのエラーを修正すると、もう一方のエラーは消えてしまいます。

関連する問題