集合大家族(六)

    java中的集合类实在是太丰富了,有常用的ArrayList、hashMap,也有不常用的Stack,Queue,有线程安全的Vector、HashTable,也有线程不安全的LinkedList,TreeMap,有阻塞式的ArrayBlockingQueue,也有非阻塞样式的PriorityQueue等,整个集合家族非常庞大,可以划分为一下几类。

(1)List

实现List 接口的集合主要有:ArraList、LinkedList、Vector、Stack,其中ArrayList是一个动态数组,LinkedList是一个双向链表,Vector是一个线程安全 动态数组,Stack是一个对象栈,遵循先进后出的原则。

(2)Set

Set 是不包含重复元素的集合,主要的实现类是:EnumSet、HashSet、TreeSet,其中EnumSet是枚举类型专用Set,所有元素都是枚举类型;HashSet额是以哈希吗决定其元素位置的Set,其原理与HashMap相似,它提供快速插入和查找方法;TreeSet是一个自动排序的Set,它实现SortedSet接口。

(3)Map

Map是一个大家族,分为排序Map和非排序Map,排序Map主要是TreeMap类,它根据Key值进行自动排序;非排序Map主要包括:hashMap,hashTable、Properties、EnumMap等,其中Properties是HashTable的子类,它的用途主要是从Property文件中加载数据,并提供方便的读写操作;EnumMap要求Key必须是一个枚举类型。

(4)Queue

分为阻塞式和非阻塞式,最常用的的是PriorityQueue类;

(5)数组

数组能够容纳基本类型,集合不能,集合低层是数组实现。

(6)工具类

数组的工具类是java.util.Arrays和java.lang.refect.Array,集合工具类是Java.util.Collections

(7)扩展类

扩展Apache的commons-collections扩展包,可也以是google-collections扩展包。

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值