JAVA复习之集合~~
来源:互联网 发布:淘宝网店虚拟交易套现 编辑:程序博客网 时间:2024/05/16 16:06
集合:用于存储对象的长度可变的容器;
因为结构参数不同,形成了集合体系;
Collection 接口
共性方法:
添加:boolean add(obj);向集合中添加元素;
删除:
boolean remove();删除集合的某一个元素;
boolean clean(); 清空容器中的所有元素;
判断:
boolean contains();判断容器中是否有这个元素,有的话返回true;
isEmpty();判断集合是否为空;依据的是size方法;
获取:
Iterator iterotor(); 迭代器;遍历每个元素;
交集:
retainAll(); al.retainAll(all); 获取al容器与all容器相同的元素;
个数:
size();方法;
|--List:有序,可以重复,有角标;靠角标找到元素;
|--Set:无序,无重复,
转成数组 :T[] toArray(T() t);
------------------------------------------------------
List:
特有方法,依据角标识别元素;index角标;
添加(插入):add(index,obj);
删除:remove(index);
获取:get(index);
索引:
indexOf(obj);
lastList(obj);
取子列表
subList(start,end);包括头不包括尾
修改:set(index,obj);
list集合支持列表迭代器ListIterator();
Iterator在迭代时,只能对元素进行获取(next())和删除(remove)的操作;
Iterator的子接口ListIterator在迭代集合时,可以定义元素进行添加add(index,obj)、修改set(index,obj)的操
作;
List :
vector:底层是数组数据结构,jdk1.0开始出现。线程是同步的,被jdk1.2出现的ArrayList所替代,因为效率低;
----
一中特有的取出方式——枚举(Enumeration)
枚举的功能和迭代器功能一致,因方法名过长被取代;
----
ArrayList:底层是数组数据结构(可变长度数组:超出已有数组长度后会有新数组形成,并把原数组数据的复制新数组
中),jdk1.2出现,线程不是同步的,查询速度快;
LinkedList:底层是链表数据结构,线程是不同步的,增删数据很快,可以使用该集合去模拟 队列(先进先出) 或者堆栈
(后进先出)数据结构;
-----
特有方法:
addFirst();------jdk1.6-------offerFirst();在此列表的开头插入指定的元素。
addLase();-------jdk1.6-------offerLast(); 在此列表末尾插入指定的元素。
getFirst()------jdk1.6-------peekFirst();获取但不移除此列表的第一个元素;如果此列表为空,则返回 null
。
getLast()------jdk1.6-------peekLast(); 获取但不移除此列表的最后一个元素;如果此列表为空,则返回 null
。
removeFirst()------jdk1.6-------pollFirst();获取并移除此列表的第一个元素;如果此列表为空,则返回 null
。
removeLast()------jdk1.6-------pollLast();获取并移除此列表的最后一个元素;如果此列表为空,则返回 null
。
因为结构参数不同,形成了集合体系;
Collection 接口
共性方法:
添加:boolean add(obj);向集合中添加元素;
删除:
boolean remove();删除集合的某一个元素;
boolean clean(); 清空容器中的所有元素;
判断:
boolean contains();判断容器中是否有这个元素,有的话返回true;
isEmpty();判断集合是否为空;依据的是size方法;
获取:
Iterator iterotor(); 迭代器;遍历每个元素;
交集:
retainAll(); al.retainAll(all); 获取al容器与all容器相同的元素;
个数:
size();方法;
|--List:有序,可以重复,有角标;靠角标找到元素;
|--Set:无序,无重复,
转成数组 :T[] toArray(T() t);
------------------------------------------------------
List:
特有方法,依据角标识别元素;index角标;
添加(插入):add(index,obj);
删除:remove(index);
获取:get(index);
索引:
indexOf(obj);
lastList(obj);
取子列表
subList(start,end);包括头不包括尾
修改:set(index,obj);
list集合支持列表迭代器ListIterator();
Iterator在迭代时,只能对元素进行获取(next())和删除(remove)的操作;
Iterator的子接口ListIterator在迭代集合时,可以定义元素进行添加add(index,obj)、修改set(index,obj)的操
作;
List :
vector:底层是数组数据结构,jdk1.0开始出现。线程是同步的,被jdk1.2出现的ArrayList所替代,因为效率低;
----
一中特有的取出方式——枚举(Enumeration)
枚举的功能和迭代器功能一致,因方法名过长被取代;
----
ArrayList:底层是数组数据结构(可变长度数组:超出已有数组长度后会有新数组形成,并把原数组数据的复制新数组
中),jdk1.2出现,线程不是同步的,查询速度快;
LinkedList:底层是链表数据结构,线程是不同步的,增删数据很快,可以使用该集合去模拟 队列(先进先出) 或者堆栈
(后进先出)数据结构;
-----
特有方法:
addFirst();------jdk1.6-------offerFirst();在此列表的开头插入指定的元素。
addLase();-------jdk1.6-------offerLast(); 在此列表末尾插入指定的元素。
getFirst()------jdk1.6-------peekFirst();获取但不移除此列表的第一个元素;如果此列表为空,则返回 null
。
getLast()------jdk1.6-------peekLast(); 获取但不移除此列表的最后一个元素;如果此列表为空,则返回 null
。
removeFirst()------jdk1.6-------pollFirst();获取并移除此列表的第一个元素;如果此列表为空,则返回 null
。
removeLast()------jdk1.6-------pollLast();获取并移除此列表的最后一个元素;如果此列表为空,则返回 null
。
- JAVA复习之集合~~
- java复习之集合
- java基础复习之集合
- Java基础复习之遍历Map集合
- 黑马程序员--java基础复习之集合
- Java找工作之面试复习(1) 集合
- Java复习之集合框架List接口
- Java复习之集合框架Set接口
- C#复习之集合
- java集合复习转载
- Java集合框架复习
- Java集合框架复习
- java复习 集合
- java集合复习1
- java集合复习2
- JAVA集合复习
- Java基础复习系列六之Java集合
- Java集合框架复习之规则集Set-LinkedHashSet(四)
- 【Ant fork】用IDE直接运行类的main函数
- 【编程之美】读书笔记:求1到N之间整数中出现1的个数
- Java中对象的序列化(实现java.io.Serializable)
- hibernate中的 UserType 的使用
- C语言中.h和.c文件差别
- JAVA复习之集合~~
- wampsever安装,和简单的配置
- 51 Keil语句延迟时间的精确计算 [李园7舍_404]
- Linux下如何模拟touch事件?
- Codeforces Round #142 (Div. 2)
- paip.提升用户体验---网站程序HTML,JS需要注意的地方
- 线程局部存储 Thread Local Storage 线程特定数据 Thread-Specific Data
- HTML<marquee><base><meta><link>
- CentOS下查看温度及风扇转速