JAVA集合学习-----List
上一篇 /
下一篇 2013-05-13 23:50:57
/ 个人分类:JAVA学习
在集合框架Collection中包含Set、List
集合和数组
相同点:存放的都是对象的引用(地址)
不同点:数组中存储对象必须一致,且数组长度都是固定的;集合反之
Collection
-List:元素是有序的,元素可以重复 包含:
--ArrayList:数组结构,查询速度快,增删慢
--LinkedList:链表结构,增删快,查询速度慢
--Vector:底层数组结构,线程同步。被ArryList替代
-Set:元素是无序,元素不可以重复 包含:HasSet、TreeSet
集合框架共性方法
集合长度
size();
取交集
returnALL:a1中只保留与a2相同的元素
a1.returnALL(a2);
移除相同
removeALL:a1中只移除与a2相同的元素
a1.removeALL(a2);
判断是否包含
a1.contains(a2);
迭代器Itartor:集合取出元素的方式
Iterator it = al.iterator(); //获取迭代器,用于取出集合中的元素
while(it.hasNext()){
System.out.println(it.next());
}--取值时最好能向下转型
hasNext:判断下一位角标是否存在元素(true|false)
next():返回下一个元素,并且角标
移动到后一位
remove()移除集合中的元素
List集合:
特有方法,凡是可以操作角标的方法都是该体系特有的方法
增
add(index,element)
addALL(index,Collection);
删
remove(index);
改
set(index,element);
查
subList(from,to);包含from不包括to
get(index);
获取对象位置
indexof();
List集合特有的迭代器
ListIterator是Iterator的子接口
因Iterator只具备判断,取出,删除操作,假若想要其他操作,如增加,修改,就需要使用其子接口
LinkList特有方法
添加
addFirst()
addLast()
获取元素,但不删除,没元素会抛异常
getFirst();
getLast();
获取元素,并删除,没元素会抛异常
removefirst()
removeLast()
JDK 1.6版本替代方法
添加
offerFirst()
offLast()
获取元素,但不删除,没有元素返回null
peekFirst()
peekLast()
获取元素,但删除,没有元素返回null
pollFirst()
pollLast()
PS:可以通过以上方法模拟 堆栈(先进后出)和队列(先进先出)
List集合判断元素是否相同,依据的是元素的equals方法
而List是通过contains、romove等方法调用 元素的equals方法
收藏
举报
TAG: