1

Javaと配列からの結果を返すのに助けが必要です。

私の配列リストには、レストランからの注文が格納されています(注文クラスによって作成されます)。次に、Deliverylogクラス(配列リストを作成する)には、waitingListと呼ばれる配列リストに注文を追加するためのメソッドがあります。

各注文には、参照番号と配達時間などの詳細があります。

私がやろうとしているが、手がかりが得られていないのは、入力されたものと同じ参照番号を持つ項目を配列リストで検索するパラメーター(int ref)を使用してメソッドを作成することです。見つかった場合は順序を返し、それ以外の場合はnullを返します。

どんな助けでも適用されます。

コード

   /**
 * Show a order.
 * @param refnum The reference number of the order to be shown
 */
public void findOrderWaiting(int refnum)
  {
    if(refnum < 0) {
        // This is not a valid reference number
    }
    else if(refnum <= numberOfOrders()) {
        // This is a valid reference number
        System.out.println(waitingList.get(refnum));
    }
    else {
        // This is not a valid reference number
    }
  }
4

3 に答える 3

1

arrayListには、内部のアイテムを検索するメソッドがあることをご存知でしょう。

   //a is an arraylist

  //filling the list here is omitted

   //o is the object to find its index
   int ind=a.indexOf(o);   

int indexOf(Object o)はすでに発明されているので、メソッドを作成する必要はありません。学習目的でこれが必要な場合は、インターネットからハッシュ手法を検索できますが、arrayListを使用しており、最も簡単なのはindexOf()メソッドです。

HashTableは、アイテムまたはキーを自由に検索できるようにすることで、より柔軟性があります(キーを指定してアイテムを取得するか、アイテムを指定してそのキーを取得します)(キーもオブジェクトにすることができます!)

于 2012-11-24T20:57:46.710 に答える
0

さて、あなたは標準のforループを使って配列をループすることができます:

for(int i=0; i<array.length; i++){
   if(array[i].intPart == ref) return array[i];
}
return null;

お役に立てば幸いです。

于 2012-11-24T20:54:46.583 に答える
0
for(String s: restaurentOrders){
   if(s.equalsIgnoreCase()){
              //You have it..
   }
}

uが配列/配列リストをrestaurentOrdersに格納している場合。それが役に立てば幸い

于 2012-11-24T20:57:57.260 に答える