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:

 

评分:0

我来说两句

日历

« 2024-05-12  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 10098
  • 日志数: 20
  • 建立时间: 2013-03-24
  • 更新时间: 2014-03-22

RSS订阅

Open Toolbar