Collection集合框架
List接口
1、list接口可以存放任意的数据,而且在List接口中内容是可以重复的
2、list接口常用的子类:
ArrayList:jdk1.2之后推出,采用一部处理方式,性能高,属于非线性安全。
Vector:jdk1.0推出,采用同步处理方式,性能低,属于线性安全。
3、常用操作:
判断集合是否为空:Boolean isEmpty()
查找指定的对象是否存在:int indexOf(Object o)
set接口
1、set接口中不能加入重复的元素,但是可以排序
2、set接口中常用子类
散列存放:HashSet
有序存放:TreeSet
Iterator接口
所有的用法
详情查看API;
注:在迭代输出的同时绝对不能对集合进行删除元素
错误示范:
Map接口
HashMap的key是唯一的
通过键找值
判断key是否存在
判断值是否存在
得到全部的键,值
打印所有的键,通过迭代器进行输出,用while得到所有的键值对。
键![]()
值
数组: 存储同一种数据类型的集合容器.
数组的特点:
1. 只能存储同一种数据类型的数据。
2. 一旦初始化,长度固定。
3. 数组中的元素与元素之间的内存地址是连续的。
注意: Object类型的数组可以存储任意类型的数据。
集合:集合是存储对象数据的集合容器。
集合比数组的优势:
1. 集合可以存储任意类型的对象数据,数组只能存储同一种数据类型 的数据。
2. 集合的长度是会发生变化的,数组的长度是固定的。
-------| Collection 单例集合的跟接口。
----------| List 如果是实现了List接口的集合类,具备的特点: 有序,可重复。
----------| Set 如果是实现了Set接口的集合类,具备特点: 无序,不可重复。
Collection接口中的方法:
增加
add(E e) 添加成功返回true,添加 失败返回false.
addAll(Collection c) 把一个集合 的元素添加到另外一个集合中去。
删除
clear()
remove(Object o) 指定集合中的元素删除,删除成功返回true,删除失败返回false.
removeAll(Collection c) 删除交集元素
retainAll(Collection c) 保留交集元素 ,其他非交集元素删除
查看
size() 查看元素的个数
判断
isEmpty()
contains(Object o) 其实contains方法内部是依赖于equals方法进行比较的。 调用的是实参的equeals方法
containsAll(Collection<?> c)
迭代
toArray() 把集合中的元素全部 存储到一个Object的数组中返回。
iterator()
迭代器的作用:就是用于抓取集合中的元素。
迭代器的方法:
hasNext() 问是否有元素可遍历。如果有元素可以遍历,返回true,否则返回false 。
next() 获取元素...
remove() 移除迭代器最后一次返回 的元素。