java中集合的区别_Java中集合类的区别

Array是数组,不在集合框架范畴之内,一旦选定了,它的容量大小就不能改变了,所以通常在编程中不选用数组来存放。

集合:

集合对象:用于管理其他若干对象的对象

数组:长度不可变

List: 有顺序的,元素可以重复

遍历:for 迭代

排序:Comparable Comparator Collections.sort()

ArrayList:底层用数组实现的List

特点:查询效率高,增删效率低 轻量级 线程不安全

LinkedList:底层用双向循环链表 实现的List

特点:查询效率低,增删效率高

Vector: 底层用数组实现List接口的另一个类

特点:重量级,占据更多的系统开销 线程安全

Set:无顺序的,元素不可重复(值不相同)

遍历:迭代

排序:SortedSet

HashSet:采用哈希算法来实现Set接口

唯一性保证:重复对象equals方法返回为true

重复对象hashCode方法返回相同的整数

不同对象 哈希码 尽量保证不同(提高效率)

SortedSet:对一个Set排序

TreeSet:在元素添加的同时,进行排序。也要给出排序规则

唯一性保证:根据排序规则,compareTo方法返回为0,就可以认定两个对象中有一个是重复对象。

Map:元素是键值对 key:唯一,不可重复 value:可重复

遍历:先迭代遍历key的集合,再根据key得到value

HashMap:轻量级 线程不安全 允许key或者value是null

Hashtable:重量级 线程安全 不允许key或者value是null

Properties:Hashtable的子类,key和value都是String

SortedMap:元素自动对key排序

TreeMap:

集合是指一个对象可以容纳了多个对象(不是引用),这个集合对象主要用来管理维护一系列相似的对象。

集合接口类层次 :

位于package java.util.*;

Collection

|ˉˉˉˉˉˉ|

Set List Map

↑ ↑

| |

SortedSet SortedMap

1) Set: 集合类中不允许有重复对象;

2) SortedSet: 和Set接口同,但元素按升序排列;

3) List: 元素加载和移出时按照顺序,可以保存重复对象。

4) Map: key-value对)存储了唯一关键字辨识和对应的值。

5) SortedMap: 和Map类同,但对象按他们关键字的升序排列。

51/512345>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值