2016-11-23 4 views
-1

私は現在、学校プロジェクトのチェッカーゲームに取り組んでいます。ボードは、ボード上のピースを表す2次元配列のストリングです。現在、私はゲームのルールをコーディングしていますが、何らかの理由で.equals()がwhileループで失敗します。.equals()が失敗するのはなぜですか?チェッカーゲーム

private static String redPawn = "redPawn"; 
private static String blackPawn = "blackPawn"; 
private static String redKing = "redKing"; 
private static String blackKing = "blackKing" 
private static String[][] checkerPieces = new String[row][col]; 

while(!redPawn.equals(checkerPieces[r][c]) || !redKing.equals(checkerPieces[r][c])) 
    { 
     System.out.println("You can only move the red pawns"); 
     playerInput.selectPiece(); 
    } 

デバッグとだけ入れて:私はredKingをチェックする条件文を追加するまで

while(!redPawn.equals(checkerPieces[r][c])) 
    { 
     System.out.println("You can only move the red pawns"); 
     playerInput.selectPiece(); 
    } 

それは動作します。誰も助けることができます。

+0

あなたが取得しているエラーを追加することはできますか? – JonasAnon

+0

「c」と「r」は何ですか? – juliocb92

答えて

3

いくつかの理由から、whileループではequals()が失敗します。

これは、使用OR ||ためである、使用、&&代わり

while(!redPawn.equals(checkerPieces[r][c]) && !redKing.equals(checkerPieces[r][c])) 
関連する問題