您的位置:首页 > 其它

List集合学习笔记

2014-02-24 09:27 106 查看
----------------------
ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
集合:

1特点:集合中存放的都是对象,长度是不可变的,数组可以存放基本数据类型,长度不可变。

2框架:Collection

List //元素是有序的,元素可以重复,因为该集合体系有索引,特有的迭代器,ListIterator是Iterator的子接口,只能用迭代器来操作元素,Iterator方法有限,只能提供添加、修改等,ListIterator可以提供更多的方法。

ArrayList //底层的数据结构使用的是数组结构。特点:查询速度快,但是增删稍慢。线程不同步。

add()方法,参数是Object类型的对象,集合里面存放的都是对象的引用地址。

add(索引,对象) 在指定位置添加元素

set(索引,对象) 修改元素

get(索引) 得到相应的元素

remove()删除集合中的某个元素。

clear()清空集合

contains() 是否包含某个元素

isEmpty()集合是否为空

retainAll(集合) 取两个集合的交集。

removeAll(集合)去掉两个集合重复的部分

//迭代时不允许修改集合,否则发生异常。

Iterator it=集合.iterator()

while (it.hasNext()) {

it.next();

it.add();//迭代器的添加元素的方法

it.set();//迭代器修改元素的方法

}

indexOf(元素) 获取元素的索引

subList(1,3) 截取集合 返回集合类型

LinkedList//底层使用的链表数据结构。 特点:查询速度慢,增删快。

//特有方法

addFirst()//添加元素

addLast()

getFirst()//获取元素,如果集合中没有元素,会出现异常

getLast()

removeFirst()//删除元素,返回值是删除的元素,如果集合中没有元素,会出现异常

removeLast()

//1.6版本后提供一下方法,替代以上的方法

offerFirst()//添加元素

offerLast()

PeekFirst()//得到元素,如果集合中没有元素,返回null.

PeekLast()

pollFirst()//删除元素,如果集合中没有元素,返回null.

pollLast()

Vector//底层是数组数据结构。1.0版本时的集合,被ArrayList代替,线程同步。

枚举是Vector特有的取去方式,和迭代器是一样的,枚举取数据方式的名字和方法名字都过长,被迭代取代。

Set //元素是无序的(存入和取出是不一定一致),元素不可以重复。

HashSet//底层数据结构是哈希表,通过HashCode和equals来判断是否重复,首先判断HashCode,如果一样在判断equals。注意:对于判断元素是否存在,以及删除等操作依赖于HashCode和equals两个方法。

TreeSet//底层数据结构是二叉树结构,可以对集合中元素排序,
集合中的元素需要实现Comparable接口,创建接口时,可以传入一个比较器(实现Comparator接口)覆盖compare方法。

----------------------
ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐