Java类集框架

java——常用类集


一、集合概述

Java集合主要有 3 种重要的类型:

  • List:是一个有序集合,可以放重复的数据
  • Set:是一个无序集合,不允许放重复的数据
  • Map:是一个无序集合,集合中包含一个键对象,一个值对象,键对象不允许重复,值对象可以重 复(key—value)
  • 在这里插入图片描述

二、集合继承结构图

1.Collection

在这里插入图片描述

2.Map

在这里插入图片描述

三 、List接口

List 接口下面主要有两个实现 ArrayList 和 LinkedList,他们都是有顺序的,也就是放进去 是什么顺序,取出来还是什么顺序,也就是基于线性存储,可以看作是一个可变数组

  • ArrayList:查询数据比较快,添加和删除数据比较慢(基于可变数组)
  • LinkedList:查询数据比较慢,添加和删除数据比较快(基于链表数据结构)
  • Vector:Vector 已经不建议使用,Vector 中的方法都是同步的,效率慢,已经被 ArrayList 取代
  • Stack是继承 Vector 实现了一个栈,栈结构是后进先出,目前已经被 LinkedList 取代

四、Set 接口

哈希表

哈希表是一种数据结构,哈希表能够提供快速存取操作。哈希表是基于数组的,所以也存 在缺点,数组一旦创建将不能扩展。 正常的数组,如果需要查询某个值,需要对数组进行遍历,只是一种线性查找,查找的速 度比较慢。如果数组中的元素值和下标能够存在明确的对应关系,那么通过数组元素的值就可 以换算出数据元素的下标,通过下标就可以快数定位数组元素,这样的数组就是哈希表。

1 HashSet

HashSet 中的数据是无序的不可重复的。HashSet 按照哈希算法存取数据的,具有非常好性能, 它的工作原理是这样的,当向 HashSet 中插入数据的时候,他会调用对象的 hashCode 得到该 对象的哈希码,然后根据哈希码计算出该对象插入到集合中的位置。

2 TreeSet

TreeSet 可以对 Set 集合进行排序,默认自然排序(即升序),但也可以做客户化的排序

五、 Map 接口

Map 中可以放置键值对,也就是每一个元素都包含键对象和值对象,Map 实现较常用的为 HashMap,HashMap对键对象的存取和 HashSet 一样,仍然采用的是哈希算法,所以如果使用 自定类作为 Map的键对象,必须复写equals 和 hashCode 方法。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值