Java -- (part18)

一Collection接口

1.概述:

单列集合的顶级接口

2.使用

Collection<泛型> 对象名 = new 实现类集合对象<>()

<E>:泛型,决定集合中的元素都是啥类型的,必须指定的是引用数据类型

3.方法

boolean add(E e):将给定的元素添加到当前集合中

boolean addAll(Collection<? extends E> c):将另一个集合元素添加到当前集合中(集合合并)

void clear():清除集合中的所有元素

boolean contains(Object o):判断当前集合中是否包含指定的元素

boolean isEmpty():判断当前集合中是否有元素->判断集合是否为空

boolean remove(Object o):将指定的元素从集合中删除

int size():返回集合中的元素个数

Object[] toArray():把集合中的元素,存储到数组中

二.迭代器

1.概述

Iterator接口

2.获取

Collection中的方法:Iterator<E> iterator()

3.方法

boolean hasNext()->判断集合中有没有下一个元素

E next()->获取下一个元素

4.注意

并发修改异常

三.数据结构

栈:先进后出

队列:先进先出

数组:查询快-有索引,增删慢->定长

链表:查询慢,增删快

单向链表:前面记录后面节点地址,后面不记录前面地址

双向链表:前后两个节点互相记录地址

四.List接口

ArrayList

1.特点

a.元素有序

b.元素可重复

c.有索引

d.线程不安全

2,数据结构

数组

3.方法

4.底层原理:

LinkedList

1.特点

a.元素有序

b.元素可重复

c.有索引(实际无)

d.线程不安全

2.数据结构

双向链表

3.方法

五.增强for

1.作用

遍历集合或者数组

2.格式

java 复制代码
for(元素类型 变量名:要遍历的集合名或者数组名)

{

  变量名代表每一个元素

}

3.实现原理

遍历集合时,底层为迭代器

遍历数组时,底层为普通for

相关推荐
Rcnhtin几秒前
RocketMQ
java·linux·rocketmq
天天进步201518 分钟前
Python全栈项目:从零构建基于 Django 的知识管理系统(KMS)
开发语言·python·django
JH307318 分钟前
RedLock-红锁
java·redis
珎珎啊23 分钟前
Python3 迭代器与生成器
开发语言·python
凯瑟琳.奥古斯特31 分钟前
C++变量与基本类型精解
开发语言·c++
喜欢吃鱿鱼1 小时前
DES加解密(附带解决转义问题)-VUE
开发语言·前端·javascript
愚者游世1 小时前
variadic templates(可变参数模板)各版本异同
开发语言·c++·程序人生·面试
书到用时方恨少!1 小时前
Python 面向对象进阶:多态——同一个接口,千种面孔
开发语言·python·多态·面向对象
rannn_1111 小时前
【Redis|原理篇2】Redis网络模型、通信协议、内存回收
java·网络·redis·后端·缓存
无忧.芙桃1 小时前
现代C++精讲之处理类型
开发语言·c++