----------------------
ASP.Net+Unity开发、
.Net培训、期待与您交流! ----------------------
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两个方法。
集合:
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