java集合

java集合

1.Collection

collection
remove()contains()需要目标类的equalse()方法支持。(在简单java类中实现equals()方法的概率很低)。

2.List

List
可以保存重复数据。

1.ArrayList(jdk1.2)

是针对于list接口的数组操作实现。
初始化大小可以提高ArrayList的性能。

2.Vector

是jdk1.0就提出的,
问:ArrayList与Vector的区别?

*ArrayListVector
时间jdk1.0jdk1.2
处理形式异步处理同步处理
数据安全非线程安全线程安全
输出形式Iterator、ListIterator、foreachIterator、ListIterator、foreach、Enumeration

在使用过程中优先考虑ArrayList。

3.LinkedList

是一个纯粹的链表实现。
与ArrayList的区别?
1. 数组实现,链表实现。
2. 时间复杂度n,时间复杂度1。

3.Set

这里写图片描述

1.HashSet

无序存储。
需要重写保存类型的hashcode和equals方法

2.TreeSet

有序存储。
使用时保存类型需要实现Comparable。需要通过其完成排序和相同比较。

集合的输出

1.迭代输出(iterator)

只能够由前向后迭代输出。

2.双向迭代输出(ListIterator)

3.枚举行输出(enumeration)

4.foreach

map

1.Hashmap和HashTable的区别?

hashmap允许key和value为null。
HashTable为同步操作。

ConcurrentHashMap

线程安全的高性能对象。
采用了数据分块,避免了全局查询。数据分块使用hashcode作为分块标志。

总结

collection集合是为了输出,map集合是为了查找。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值