如何从Array添加SortedSet项?

时间:2010-06-28 22:33:24

标签: java arrays serialization treeset sortedset

我有这样定义的SortedSet:

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

我有一个RatedMessage []

数组

我不得不使用数组,因为集合错过了序列化功能,现在我需要重新构建它。

有没有一种快速的方法可以将数组中的所有项目再次添加到集合中?

3 个答案:

答案 0 :(得分:9)

Collections.addAll(messageCollection, array);

功能上与迈克尔的答案相同,但正如javadoc所说:

  

添加所有指定的元素   指定的集合。要素   可以单独指定添加   或者作为一个数组。这个行为   便利方法是一样的   那   c.addAll(Arrays.asList(元素)),   但这种方法可能会运行   大多数情况下显着更快   的实施方式。

答案 1 :(得分:5)

Set有一个addAll方法,但它只需要一个集合,所以你需要先转换数组:

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

答案 2 :(得分:1)

您可以使用 Arrays.asList RatedMessage [] 数组添加到 SortedSet 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);
        }