Collection 实现一般都有一个接受Collection对象的构造器。这使得及可以将Collection转换成不同类型的Collection。
某些实现的构造器:
public ArrayList(Collection c)
public HashSet(Collection c)
public LinkedList(Collection c)
以下代码将Queue转换成一个List;
Queue queue=new LinkedList();
queue.add("Hello");
queue.add("World");
List list =new ArrayList(queue);
以下代码则将List转换成Set:
List myList=new LinkedList();
myList.add("Hello");
myList.add("World");
myList.add("World");
Set set =new HashSet(myList);
以上可以看出,myList有三个元素,其中两个是相同的。由于Set不允许有重复的元素,因此只接受其中一个相同的元素。最终,上述代码中的Set只有两个元素。
|