java集合

来源:互联网 发布:网络延迟100多 编辑:程序博客网 时间:2024/05/16 16:04

java集合

1.Collection

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

2.List

List
可以保存重复数据。

1.ArrayList(jdk1.2)

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

2.Vector

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

* ArrayList Vector 时间 jdk1.0 jdk1.2 处理形式 异步处理 同步处理 数据安全 非线程安全 线程安全 输出形式 Iterator、ListIterator、foreach Iterator、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集合是为了查找。

原创粉丝点击