JAVA—集合框架

(一)接口

接口:表示集合的抽象数据类型,接口允许我们操作集合时不必关注具体实现,从而达到"多态"

在面向对象编程语言中,接口通常用来形成规范

(二)使用集合框架的好处

1、容量自增长

2、提供了高性能的数据结构和算法,使编码更轻松,提高了程序速度和质量

3、允许不同API之间的互操作,API之间可以来回传递集合

4、可以方便的扩展或改写集合,提高代码的复用性和可操作性性

5、通过使用JDK自带的集合类,可以降低代码维护和学习新API成本

Iterator接口

Iterator接口,用于遍历集合元素的接口

在Iterator接口中定义的三个方法:

1、boolean类型 ——hasNext()如果仍有元素可以迭代,则返回true

2、E类型——next()返回迭代的下一个元素

3、void类型——remove()从迭代器指向的collection中移除迭代器返回的最后一个元素(可选操作)

集合工具类Collection:存放单一的值

特点:

1、可以存放不同类型的数据,而数组只能存放固定类型的数据

2、当使用Arraylist子类实现的时候,初始化长度为10,当长度不够的时候会自动的进行扩容操作

3、剩下的读api帮助文档

Listlterator接口:

Listlterator是一个功能更加强大的迭代器,它继承于lterator接口,只能用于各种List类型的访问,

可以通过listlterator()方法产生一个指向List开始处的Listlterator,还可以调用listlterator(n)方法创建

一个一开始就指向列表索引为n的元素处的Listlterator

特点:

1、允许我们向前,向后两个方向遍历List

2、在遍历时修改List的元素

3、遍历时获取迭代器当前游标所在位置

List集合:

List的元素有序并且可以重复的集合

List的主要实现:ArrayList,LinkList,Vector

List常用方法:增(add(),addAll())、删(remove(),removeAll(),clear())、改(set)、获取(get(),subList(),indexOf(),size())、判断(isEmpty(),contains())

Set集合:

Set集合元素无序,并且没有重复对象

Set的主要实现类:HashSet,TreeSet

Set常用方法:增(add(),addAll())、删(remove(),removeAll(),clear())、获取(get(),listlterator(),size())判断(isEmpty(),contains())

Map接口:

Map是一种把键对象和值对象映射的集合,它的没一个元素都包含一对键对象和值对象,Map没有

继承Collection接口,从Map集合中检测元素时,只要给出键对象,就会返回对应的值对象

Map的常用实现类:HashMap、TreeMap、HashTable、LinkHashMap、ConcurrentHashMap

Map常用方法:增(put(),putAll()、删(remove(),clear())、获取(get(),size(),entrySet(),keySet(),values())、判断(isEmpty(),containsValue)

重点:

HashMap、HashTable、TreeMap的区别

TreeMap:基于红黑树实现

HashMap:基于哈希表实现

HashTable:和HashMap类型,但它是线程安全的,这意味着同一时刻多个线程可以同时写入

HashTable并且不会导致数据不一致

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值