Java学习篇之---Collection接口

Collection接口

Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。JavaSDK不提供直接继承自Collection的类,Java SDK提供的类都是继承自Collection的“子接口”如List和Set。

所有实现Collection接口的类都必须提供两个标准的构造函数:无参数的构造函数用于创建一个空的Collection,有一个Collection参数的构造函数用于创建一个新的Collection,这个新的Collection与传入的Collection有相同的元素。后一个构造函数允许用户复制一个Collection。

如何遍历Collection中的每一个元素?不论Collection的实际类型如何,它都支持一个iterator()的方法,该方法返回一个迭代子,使用该迭代子即可逐一访问Collection中每一个元素。典型的用法如下:

Iterator it = collection.iterator(); // 获得一个迭代子  
while(it.hasNext())   
{  
Object obj = it.next(); // 得到下一个元素  
}
由Collection接口派生的两个接口是List和Set。

Collection  
├List  
│├LinkedList  
│├ArrayList  
│└Vector  
│ └Stack  
└Set 

易混淆:

1、java.util.Collection 是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。
2、java.util.Collections 是一个包装类。它包含有各种有关集合操作的静态多态方法。此类不能实例化,就像一个工具类,服务于Java的Collection框架。

    import java.util.ArrayList;  
    import java.util.Collections;  
    import java.util.List;  
      
    public class TestCollections {  
          
        public static void main(String args[]) {  
                   //注意List是实现Collection接口的  
            List list = new ArrayList();  
            int array[] = { 6, 8, 23, 1, 7 };  
            for (int i = 0; i < array.length; i++) {  
                list.add(array[i]);  
            }  
            Collections.sort(list);  
            for (int i = 0; i < array.length; i++) {  
                System.out.println(list.get(i));  
            }   
        }  
    }  
结果:
1
6
7
8
23



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。