我有一个这样定义的 SortedSet:
SortedSet<RatedMessage> messageCollection = new TreeSet<RatedMessage>(new Comp());
我有一个 RateMessage[] 数组
我不得不使用数组,因为该集合错过了序列化功能,现在我需要将其构造回来。
有没有一种快速的方法可以将数组中的所有项目再次添加到集合中?
我有一个这样定义的 SortedSet:
SortedSet<RatedMessage> messageCollection = new TreeSet<RatedMessage>(new Comp());
我有一个 RateMessage[] 数组
我不得不使用数组,因为该集合错过了序列化功能,现在我需要将其构造回来。
有没有一种快速的方法可以将数组中的所有项目再次添加到集合中?
Collections.addAll(messageCollection, array);
功能上与迈克尔的答案相同,但正如 javadoc 所说:
将所有指定元素添加到指定集合。要添加的元素可以单独指定,也可以作为数组指定。此便捷方法的行为与 c.addAll(Arrays.asList(elements)) 相同,但在大多数实现下此方法可能运行得更快。
Set
有一个addAll
方法,但它只需要一个集合,所以你需要先转换数组:
RatedMessage[] arr;
messageCollection.addAll(Arrays.asList(arr));
您可以使用Arrays.asList和TreeSet将RatedMessage[]数组添加到SortedSet
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);
}