私が書いたこの「search()」関数の処理に問題があります。さて、オブジェクトがすでにスタックに存在するかどうかを確認する必要があります。私のオブジェクトは次のようになります。
 Boat [mLeft=[0, 0, 0], boat=L, mRight=[0, C, V]]
そして、私のスタックは次のようなものです。
  Boat [mLeft=[0, 0, 0], boat=L, mRight=[0, C, V]]
  Boat [mLeft=[0, 0, 0], boat=C, mRight=[L, 0, V]]
  Boat [mLeft=[0, 0, 0], boat=V, mRight=[L, C, 0]]
  Boat [mLeft=[0, 0, 0], boat=0, mRight=[L, C, V]]
そして、これは私の「検索」機能です。
  public boolean search(Boat b){
    boolean r=false;
    for(int i=0;i<btStack.size();i++)
    {
        if(btStack.elementAt(i).equals(b))
        {
            r = true;               
        }
    }
    return r;
}
これは決して真実ではありません...そして私は理由がわかりません。手伝ってもらえますか?