我是在Java中使用集合的新手,我理解的向集合添加值的典型代碼是:
Set<Integer> intSet = new HashSet<Integer> ();
//然后使用add方法。
intSet.add(4)。
intSet.add(7);
intSet.add(12)。
但是我的問題是,我怎樣才能一次添加多個值,是否可以在HashSet<Integer>();行中宣告這個集合及其值?
謝謝你們!
uj5u.com熱心網友回復:
你可以將它們作為另一個Collection的一部分傳遞給建構式(或者使用addAll)。比如,
Set<Integer> intSet = new HashSet<> (Arrays. asList(4, 7, 12))。)
或者如果你需要添加多個串列,如
Set<Integer> intSet = new HashSet<>()。
intSet.addAll(Arrays.asList(4, 7, 12) )。
uj5u.com熱心網友回復:
你可以使用一個整數集合,因為HashSet的建構式可以滿足這個要求:
你可以使用一個整數的集合。
Set<Integer> intSet = new HashSet<Integer> (Arrays. asList(2,7,12) )。
要檢查你的代碼:
for(Integer i: intSet){
System.out.print(i " "/span>)。
}
輸出:
2 7 12
uj5u.com熱心網友回復:
Elliott Frisch的答案對于可修改的集合是正確的。
不可修改的集合
你問:是否可以在HashSet();行中宣告集合及其值?
是的。
Set< Integer > integers = Set.of( 4 , 7 , 12 ) 。
你問:
我怎樣才能一次添加多個值
我怎樣才能一次添加多個值?
您可以使用Set.of作為添加到現有集合的方便語法。呼叫Set#addAll。
Set< Integer > integers = new HashSet<> () ;
integers.addAll( Set.of( 4 , 7 , 12 ) ) ;
這個使用Set.of( 4 , 7 , 12 )的方法是一個現代替代Arrays.asList( 4 , 7 , 12 )在本頁面其他答案中看到。
當你完成對一個集合的修改后,你可能希望將其轉換為一個不可修改的集合。例如,當在方法之間交接一個集合時,這種方法通常是明智的。在Java 10 中,呼叫Set#copyOf。
Set< Integer > integersUnmodifiable = Set.copyOf( integers ) 。
請看類似的代碼在IdeOne.com上實時運行。
。uj5u.com熱心網友回復:
當然,如果你在另一個集合中擁有這些數字,你可以一次性將它們全部添加進去。
但是問題是,為了用它來制作這個集合,是否值得制作另一個集合。 如果你從數字中制作一個陣列,并使用該陣列制作一個ArrayList,然后使用該陣列來填充HashMap,那么對于我來說,這似乎有點間接。
這要看情況而定。
"添加 3 個常數 "是一種可能的情況嗎?
uj5u.com熱心網友回復:
用值進行初始化:
Set<Integer> set1 = new HashSet<> (Arrays. asList(1,2,3, 4,5,6) )。
添加多個值:
Collections. addAll(set1, 1,2, 3, 4,5,6)。)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/306620.html
標籤:
