1

何かの配列を作成する「簡単な」または単純な方法があるかどうかを探しています。たとえば、アイスクリーム..これは、さまざまな属性 (ID、フレーバー、サイズ、スクープ) を持つアイスクリームのクラスになります。実行したいと思います注文されたすべてのアイスクリームを収集し、このリストを検索して重複する値 (2 + 同じサイズ) を検索する配列

私が持っていた最初のアイデアは、最初のインスタンスのアイスクリーム ID を取得するよりも配列を作成し、その「フレーバー」を配列に対してチェックする for ループでした。重複が見つからない場合、ID は 1 (ID++) 増加し、それからアイスクリームのフレーバーは配列で実行されます。一致が見つかった場合は、ブール値を true に設定します。

私が取っていると思われるすべてのアプローチは、かなり長引いているようで、まだ機能していません。新鮮で経験豊富な目がこれに役立つことを願っています。

以下に答えて; XMLは以下のようなものを保持します

<iceCream id=1>
    <flavour>chocolate</flavour>
    <scoops>5</scoops>
</iceCream>
<iceCream id=2>
    <flavour>banana</flavour>
    <scoops>2</scoops>
</iceCream>

drools (おそらく配列リスト?) を使用して各アイスクリーム タグを収集し、アイスクリームのいずれかが同じフレーバーを持っているかどうかを確認し、一致が見つかった場合は何かを出力 (ブール値を true に設定) できるようにしたいと思います。配列を作成し、そのIDを使用して配列を識別して各アイスクリームを実行し、各ループ内でID +1(int ID = 1)を実行してから、lopp ID ++で実行することでした。また、フレーバーの子タグを検索します。

int ID = 0;
boolean match = false;
ArrayList iceCreams = new ArrayList($cont.getIceCreams());

for(iceCream $Flavour: (ArrayList<iceCream>)iceCreams)
    {
       ID++
       if($Flavour.getFlavour().equals(icecream with id of (ID variable).getFlavour)
       {
         match = true;
       }
    }
if(match)
{etc etc etc}

これが役立つ場合、これらの線に沿った何か?

4

2 に答える 2

0

よだれもわかりませんが、あなたが達成しようとしていると思われる疑似コードを投稿します。

for(i = 0; i < len(ice_cream_array); i++)
{
   for(j = (i + 1); j < len(ice_cream_array); j++)
   {
       if (ice_cream_array[i] == ice_cream_array[j])
           break from inner loop
       else
           there is no match

   }
}

バブルソートや二分探索も調べてみてください。

于 2013-06-14T16:25:48.090 に答える