JAVA学习05 集合框架和泛型编程

集合框架

Java集合框架: 一组存储对象的容器(动态)
JavaSE提供了:

  • Collection接口:存储另一个元素的集合
  • Map接口(图):存储键/值对
  • Collections:操作集合的工具类
Collection架构

在这里插入图片描述
Collection接口
在这里插入图片描述
具有索引的List接口
在这里插入图片描述
注意:List接口扩展 了Collection接口的方法,这些方法使用起来比父接口更加方便。 要使用List接口,需要对List接口的实现类实例化

List接口的实现类

ArrayList(数组线性表)

  • 是一个大小可变的数组,在内存中分配连续的空间
  • 遍历元素和随机访问元素的效率比较高

LinkedList(链表)

  • 采用链表存储方式
  • 提供从线性表两端提取、插入和删除元素的方法
  • 插入、删除元素效率比较高
向量类Vector

Vector类实现了List接口
在这里插入图片描述

ArrayList与Vector

Vector和ArrayList的异同:
实现原理相同,功能相同,很多情况下可以互用
两者的主要区别:

  • Vector线程安全,ArrayList重速度轻安全,线程非安全
  • 长度需增长时,Vector默认增长一倍;ArrayList增长50%,有利于节约空间
  • 如果不需要同步,最好使用ArrayList,因为它比Vector快得多
Set接口及实现类

在这里插入图片描述

java.util.Collections

Collections用于简化对Java集合框架的常见操作
在这里插入图片描述

支持队列操作的Queue

Queue通常用于操作存储一组队列方式的对象信息
特点:一般存储方式为先进先出(FIFO)
在这里插入图片描述
注意:

  • Deque支持在两端插入和删除元素,是双端队列的简称(double-ended queue),支持从两端操作队列的元素
  • 定义的方法:addFirst(e), removeFirst(e), addLast(e), removeLast(e), getFirst()/getLast()
图Map

以键-值存储元素的容器
根据关键字(key)找到对应的数据
在这里插入图片描述

Properties

键值对集合
通常用于保存字符串类型的键值对 更多用于读取属性文件

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值