2017-04-24 8 views
0

これは私が持っているコードです:最も最近のボードをポップした後、getBoard()メソッドがStackのピークにあるボードを返すようにしています。私が変える必要があるものはありますか?あなたは、このメソッドを作成し、後でそこに何かをするか、すでにから他のメソッドを呼び出す必要getBoard()メソッドを実行する私はJavaでStackを使用して2次元配列をポップしようとしています。オブジェクトではなくint [] []データ型をポップするようにスタックを取得するにはどうすればよいですか?

public void undo(){ 
     redo.push(getBoard()); 
     state.pop(); 
     board = ((int[][]) state.peek()); 
    } 

public void redo(){ 
    state.push(getBoard()); 
    redo.pop(); 
    board = ((int[][])redo.peek()); 
} 



    public void undoAction(View view){ 
twentyFortyEight.undo(); 
     customGrid.updateGrid(twentyFortyEight.getBoard()); 
     scoreBox.setText((Integer.toString(twentyFortyEight.getScore()))); 

    } 

    public void redoAction(View view){ 
twentyFortyEight.redo(); 
     customGrid.updateGrid(twentyFortyEight.getBoard()); 
    } 
+0

を存在していました。 'getBoard'、スタックの型、おそらく' Board'オブジェクトの現在の実装など、コードの関連部分をもっと表示してください。そして、もう少し欲しいものを明確にしてください。 – EyuelDK

答えて

0

、私はあなたの質問についてとても困惑している

int[][] board; 
    public int[][] getBoard(){ 
int[][] b; 
//... 
return b; 
    } 

board = getBoard(); 
+0

私はその方法を持っていて、単に配列の現在の状態を返します。 getBoard()に問題があったわけではありません。私がここに書いたメソッドで呼び出すまでです。 –

+0

たとえば、次のように指定します。 customGrid.updateGrid(twentyFortyEight.getBoard()); ここでは、パラメータint [] []があることを理解する必要があります。つまり、メソッドの説明で確認する必要があります。 customGrid.updateGrid(int [] [] mmm); –

+0

私のやり直し変数と状態変数はint [] []のスタックです。だから、私はstate.peek()メソッドを使うことができず、int [] []を返しますか? –

関連する問題