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

相关推荐
想回家的一天3 小时前
ECONNREFUSED ::1:8000 前端代理问题
开发语言
cike_y3 小时前
Mybatis之解析配置优化
java·开发语言·tomcat·mybatis·安全开发
Jay_Franklin4 小时前
SRIM通过python计算dap
开发语言·python
是一个Bug5 小时前
Java基础50道经典面试题(四)
java·windows·python
Slow菜鸟5 小时前
Java基础架构设计(三)| 通用响应与异常处理(分布式应用通用方案)
java·开发语言
消失的旧时光-19435 小时前
401 自动刷新 Token 的完整架构设计(Dio 实战版)
开发语言·前端·javascript
wadesir5 小时前
Rust中的条件变量详解(使用Condvar的wait方法实现线程同步)
开发语言·算法·rust
我是Superman丶5 小时前
《Spring WebFlux 实战:基于 SSE 实现多类型事件流(支持聊天消息、元数据与控制指令混合传输)》
java
tap.AI5 小时前
RAG系列(二)数据准备与向量索引
开发语言·人工智能
廋到被风吹走5 小时前
【Spring】常用注解分类整理
java·后端·spring