-7

誰でも私を助けることができますか?例

  • {1,2,3}
  • B{1,4,5}

コードスニペット:

a.intersect(b).print()
// Result 1 . twin between two object

a.merge(b).print()
// Result 1,2,3,4,5

以下のコードを書いたら有効ですか?そうでない場合、どの部分を修正する必要がありますか?

public static void main(String[] args) {
    // TODO code application logic here
   Set<Integer> a = new TreeSet<Integer>();
   a.add(1);
   a.add(2);
   a.add(6);
   a.remove(2);
   a.add(1); //gak berpengaruh karena sudah ada yang 1 sebelumnya
   //mengapa begituu ? karena et adalah collection yang tidak dapat memiliki elemen kembar.
   System.out.println("A = " + a);

   Set<Integer> b = new TreeSet<Integer>();
   b.add(2);
   b.add(6);
   b.add(1);
   System.out.println("B = " + b); //hasilnya 1,2,6.
   //loh?? kok bisa ? krn sy pake TreeSet, jadi udah terurut.

   b.retainAll(a); //ini rumus intersect XD
   for (Integer i: b)
   {
       System.out.print(i);
   }
}

}

4

1 に答える 1

96

このような:

import java.util.*;
Set<Integer> a = new HashSet<Integer>();
a.add( 1);
a.add( 2);
a.add( 3);

または、配列/または複数のリテラルから追加します。まず、リストにラップします。

Integer[] array = new Integer[]{ 1, 4, 5};
Set<Integer> b = new HashSet<Integer>();
b.addAll( Arrays.asList( b));         // from an array variable
b.addAll( Arrays.asList( 8, 9, 10));  // from literals

交差点を取得するには:

// copies all from A;  then removes those not in B.
Set<Integer> r = new HashSet( a);
r.retainAll( b);
// and print;   r.toString() implied.
System.out.println("A intersect B="+r);

この回答がお役に立てば幸いです。投票してください!

于 2012-10-06T03:37:58.450 に答える