2012-03-22 8 views
0

私は学校プロジェクト用のMazeSolverアンドロイドアプリを作成しました。私は迷路を解決するために取られたパスの座標位置を保持するためにスタックを使用しています。私はこのヘルパーメソッドを書いて、セル(0,0)から解決された迷路の最後のセルに座標を文字列として返すようにしました。文字列ジェネレータは2つの同一座標を表示しています

private String generateSolutionString() 
    { 
    ArrayList<String> list = new ArrayList<String>(); 
    while (!path.isEmpty()) 
    { 
     String temp = path.top().toString(); 
     list.add(0, temp); 
     path.pop(); 
    } 

    String solution = ""; 
    boolean first = true; 
    for (String s : list) 
    { 
     if (first) 
     { 
      solution += s; 
      first = false; 
     } 
     solution += " " + s; 
    } 
    return solution; 
} 

Iはまた、toString()メソッドオーバーライドされた:それはパスにstatusLabelを変更したとき

public String toString() 
{ 
    return "(" + getX() + ", " + getY() + ")"; 
} 

しかし、それは最初に座標(0,0)は、2つの印刷されます。なぜこれをやっているのですか?

+0

する

solution += " " + s; 

のためのものだと思いますか? –

答えて

2

は、私はあなたが "statusLabel" 何のことをいっているのelse

else solution += " " + s; 
+0

うわー、私はそれがばかになるだろうと分かっていました。ありがとうございました。私は今日、あまりにも長い間スクリーンを見つめている。 – helloimbarbara

+1

時々それはもう一組の目をとるだけです – dldnh

+0

答えを受け入れることを忘れないでください! – QuantumMechanic

関連する問題