Jvav Collection-List

 1 package 集合;
 2 
 3 import java.util.ArrayList;
 4 import java.util.Collection;
 5 
 6 /**
 7  * 集合和数组的区别:
 8  *     1、长度
 9  *         数组长度固定
10  *         集合长度不定
11  * 2、内容不同
12  *         数组存储的是同一种元素
13  *         集合可以存储不同类型的元素
14  * 3、存储类型
15  *         数组可以存储基本类型数据,也可以存储引用数据类型
16  *         集合只能存储引用类型
17  * 
18  * 结构图
19  *                         ArrayList
20  *                 List    Vector
21  *                         LinkedList
22  * Collection
23  *                         HashSet
24  *                Set        
25  *                         TreeSet
26  * Collection功能概述:
27  *         1、添加
28  *             add(Object o)  addAll(Collection c)
29  *         2、删除
30  *             clear() 移除所有元素
31  *             remove(Object o)
32  *             removeAll(Collection c)
33  *         3、修改
34  *         4、获取
35  *             Iterator<E> iterator()
36  *         5、长度
37  *             int size()
38  *         6、判断
39  *         contains(Object o) containAll(Collection c)  imEmpty()
40  *        7、retainAll(Collection c) 两个集合都有的元素
41  
42  */    
43 /**
44  * 迭代器遍历
45  *         Iterator it = c.iterator(); //返回的肯定是子类对象,这里是多态
46  *         it.next();                    //移动到下一个 不要在一个语句中多次调用next方法,
47  *                                         因为对象会变
48  *         it.hasNext()                //判断是不是有下一个对象
49  *        迭代器遍历元素的时候,通过集合是不能修改元素的
50  *        解决办法:
51  *            1.迭代器迭代元素,迭代器修改元素  it.add()
52  *            2.集合遍历元素,集合修改元素(for)
53  *    
54  */
55 
56 
57 /**
58  * List特点:
59  *         1.与set不同,允许重复元素。可根据索引获取对象
60  *         2.有序的collection,
61  *        3.特有功能:
62  *            1.添加功能 add(int index , object element) 在指定位置添加元素
63  *            2.获取功能 get(int index) //获取指定位置的元素
64  *            3.列表迭代器 ListIterator listIterator() List集合特有的迭代器
65  *            4.删除功能 remove(int index) 根据索引删除元素,返回被删除的元素
66  *            5.修改功能 set(int index,Object element)  返回被修改的元素
67  */
68 /**
69  * List的子类特点:
70  *     ArrayList:
71  *         底层数据结构是数组,查询快,增删慢
72  *         线程不安全,效率高
73  *     Vector:  //一般不同
74  *         底层数据结构是数组,查询快,增删慢
75  *         线程安全,效率低
76  *     LinkedList:
77  *         底层数据结构是链表,查询慢,增删慢。
78  *         线程不安全,效率高。
79  * 常见数据结构
80  *         栈  先进后出
81  *         队列 先进先出
82  *         数组 查询慢,增删快
83  *         链表 查询慢,增删快
84  *
85  */
86 public class 集合List {
87 public static void main(String[] args) {
88     //创建集合对象
89     Collection c = new ArrayList();
90 }
91 }

猜你喜欢

转载自www.cnblogs.com/sixgodbiao/p/9846226.html