2010-06-28 2 views
6

I는 SortedSet의이 방법 정의 가지고배열에서 SortedSet 항목에 추가하는 방법은 무엇입니까?

SortedSet<RatedMessage> messageCollection = new TreeSet<RatedMessage>(new Comp()); 

및 I는 I가 세트 직렬화 기능 그리워 같은 배열을 사용했다 RatedMessage []

의 배열을 갖고, 이제 그것을 구성해야 뒤로.

배열의 모든 항목을 다시 세트에 추가하는 빠른 방법이 있습니까?

답변

9
Collections.addAll(messageCollection, array); 

마이클의 대답에 기능적으로 동일하지만, javadoc에 말한대로 :

지정된 모든 요소를 ​​ 지정된 컬렉션에 추가합니다. 에 추가 할 요소는 개별적으로 또는 배열로 지정 될 수 있습니다. 이 편리한 메소드의 동작은 과 동일하지만 c.addAll (Arrays.asList (elements)), 이지만이 방법은 대부분 구현에서 을 훨씬 빠르게 실행합니다.

+0

오, 잘 했어. "이 편리한 메소드의 동작은 c.addAll (Arrays.asList (elements))의 동작과 동일하지만 대부분의 구현에서이 메소드가 훨씬 빠르게 실행될 수 있습니다." –

+0

동일한 견적을 추가하는 것과 같습니다. =) – ColinD

5

SetaddAll 방법이 있지만, 먼저 배열을 변환해야합니다, 그래서 그것은 단지, 컬렉션을 취

RatedMessage[] arr; 
messageCollection.addAll(Arrays.asList(arr)); 
+0

+1로 Arrays.asList을 사용으로의 SortedSetRatedMessage [] 배열을 추가; 내가 같은 것을 올리려고 할 때와 마찬가지로 적재되었습니다. – Carl

1

TreeSet의

String RatedMessage[]={"1","2","3","1","4","3"}; 
SortedSet lst= new TreeSet(Arrays.asList(RatedMessage)); 
Iterator it = lst.iterator(); 
     while(it.hasNext()) 
     { 
      Object ob= it.next(); 
      System.out.println(ob); 
     } 
관련 문제