JAVA 集合类

来源:互联网 发布:parse解析json字符串 编辑:程序博客网 时间:2024/06/06 05:37

  面试的时候被问到一下,现在整理一下一些Java的知识。

Collection类

Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java SDK不提供直接继承自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。

1. List类

    可以包含重复元素,是一个有序的集合,提供了按索引访问的方式,有次序,位置不改变。
1.1 ArrayList类
采用数组存放元素,增删慢,查询快,线程不安全

1.2 LinkedList类

采用链表存放元素,增删快,查询慢

1.3 Vector

数组实现,线程安全

2. Set类

无序集合,不允许存放重复元素,允许null元素

2.1 HashSet类

equals返回true,hashcode返回相同的整数,存储的数据是无序的

2.2 LinkedHashSet类

存储的数据是有序的
0 0
原创粉丝点击