JAVA集合

集合:将多个元素组成一个单元的对象,用于存储,检索,操纵和传输对象。
集合分为Collection跟Map:
Collection分为List跟Set,Map分为TreeMap跟HashMap
List分为ArrayList跟LinkedList
Set分为HashSet跟TreeSet(必须存储相同类型数据否则异常)等。

Collection只存对象,对于基本类型必须先用Wrap Class转换成对象才能进行存储。
Set:无序但是唯一;List:有序可重复;
ArrayList:读快改慢;LinkedList(双向链表):改快读慢;Hash位于其中。
Map中不能存放重复的键-值对。

HashMap与HashTable:
1.HashMap新,1.2新引入,HashTable旧。
2.HashMap中允许有空值NULL。
3.HashMap支持同步安全。
ArrayList与Vector:
1.Vector有而ArrayList没有的方法:addElement,elementAt等。
2.Vector的实现相对ArrayList稍微复杂,Vector功能并不比ArrayList强大,代码量确是两倍。
3.Vector由于使用了synchronized方法(线程安全),所以性能会下降。
Vector中的Size()是指:存储的元素个数。而capacity:容量数(即使为空)。

使用技巧:
一般都用Collection c = new ArrayList();为什么不写成 ArrayList list = new ArrayList(); ?
因为用Collection它NEW一个子类对象调父类引用,以后若想改成Set集合。直接改就行,(直接让Collection重新指向一个新的子类对象即可)因为对象c不可能调用ArrayList这个子类特有的方法!所以只要后面是子类对象即可!
这么写灵活性高,可扩展!

Iterator接口:
1。所有实现Collection接口的容器类都有一个iterator方法用以返回一个Iterator接口的对象。
2。Iterator读取的方向是单向的,也就是说不能读取以前度过的数据。但是ListIterator可以。
3。其定义的方法:
boolean hasNext(); //判断游标右边是否有元素
Object next(); //返回游标右边元素并将游标移动到下一个位置
void remove(); //删除游标左边的元素,在执行完next之后该操作只执行一次
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值