黑马程序员技术交流社区
标题:
集合
[打印本页]
作者:
Thunder_-_Li
时间:
2013-9-27 00:10
标题:
集合
集合的框架
每一个容器对数据的存储方式都不同,称之为数据结构。
List集合的特殊方式
LIst特有的迭代器是Iterator的特有的方法。
顺序遍历的方式。Iterator
迭代器是一个取出数据的一种方式;
迭代器有局限性。
枚举被迭代器取代了。因为枚举名称过长所以逐渐被取代了。
集合变数组
List:元素是有序的,元素可以重复。因为该结合体系有索引。
Set:元素是无序的,元素不可以重复。
ArrayList使用的是数组结构,查询的速度很快。增加和删除会明显的感觉很慢,
LinkList使用的是链表结构,通过指针的形式。查询的速度很慢,增删很快。
Vector底层是数组结构。 是 线程不同步的。
多线程枷锁 就不需要使用Vector。
LinkList 特有方法:
addFirst(); addLast(); getFirst(); getLast();
HashSet:底层元素是hash表
如果hash地址值相同,那么存入hash表的时候会进行内容的校验。
当取出数据的时候是无序的。
TreeSet:
Collection 中的toArray方法;
为什么要将结合变数组集合对象能够对数组进行增删
数组就不能对其进行增删。
泛型的特性:
<>用来接收类型的。当使用结合时将集合中要存储的数据类型作为参数传递到<>中就可以了。
Map集合:
Collection 单列集合 Map双列。
Map<k,v>
该集合存储键值对。一对一对往里存,而且要保证键的唯一性。
1.添加 put();
2.删除 clear();remove();
3.获取 get(); size();value(); entrySet();keySet();
4.判断 containsValue(); containKey();
Hashtable :底层是哈希表数据结构,不可以存入null键,null值该 集合是线程同步的。Jdk1.0效率低。
HashMap:底层是哈希表数据结构,允许使用null值和null键,该集合是不同步的、将hashtable替代,jdk1.2效率高。
TreeMap:底层是二叉树数据结构,线程不同步。可以用于给map集合中的键进行排序。
作者:
于振发
时间:
2013-9-27 08:45
不错,听详细的!又补充了自己的不足,谢了!
作者:
Thunder_-_Li
时间:
2013-9-27 10:10
加油兄弟 ,,,真心 想通过 6期的 云计算。。。。。。你我共勉 。。加油
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2