1

やあ、私は Item オブジェクトを作成するために使用するクラス Item を持っています

 public class Item {

 private String id; 
 private int count;
 private String  name;


public int getcount()
{
   return this.count; 
}

public Item(String name)
 {
     this.name=name;
     this.id = "";

 }



public Item(String id, String name)
 {
     this.name=name;
   this.id=id;

 }

public Item(int count)
{
    this.count=count;
}

public String getItemName()
{
    return this.name;
}

public String getItemId()
{
    return this.id;
}

public Item returnItems(ItemList itemset)
{
    Item item=null;

    return item;
}

}

そして、アイテムのリストを格納する ItemList クラスがあります。ここにアイテムオブジェクトのリストを追加しています

public  class ItemList implements Iterable<Item> 
{

  private List<Item> hold=new ArrayList<Item>();



  ItemList(Item item)
{


  this.hold.add(item); 
}

ItemList() {
    //throw new UnsupportedOperationException("Not yet implemented");
}


public List<Item> getItemSet()
{
    return this.hold;

}


public void addItems(Item item)
{
    //hold = new ArrayList<Item>();
    this.hold.add(item);
}


@Override
public Iterator<Item> iterator() {
     Iterator<Item> item = hold.iterator();
    return item; 
}



}

次のように、最初に I1、I2、I3 アイテム オブジェクトを Itemlist に追加するとします。

 {I1}
 {I2}
 {I3}

今度は、次のように Item オブジェクトのサブセットを作成し、各サブセットに 2 つのアイテムが含まれる ItemList に追加します。

     {I1 I2}
     {I1 I3}
     {I2 I3}

サブセットの作成を手伝ってください 後で 2 アイテム以上のサブセットが欲しいです n アイテムのサブセットを作成するのに役立つ関数を書きたいです 助けてください

4

1 に答える 1

0

個人的には、ItemList クラスの API は目標を達成するのに役立たないと思います。
必要なのは、「セット理論」API (つまり、交差、結合など)を操作するためにSetsを操作する ことです。おそらく、ItemList クラスには、ItemList を Set に変換する「asSet」メソッドが必要です。 アイテムのすべての可能なサブセットを取得するには、「PowerSet」計算を実装する必要があります。 Set API を使用してこれを実装すると、使用しないよりも簡単になります。 インターネットからいくつかのオープン ソースを使用することもできます 。






于 2012-09-01T07:31:14.930 に答える