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

相关推荐
nice_lcj5201 分钟前
ThreadLocal 入门:它是怎么隔离数据的、为什么会导致内存泄漏
java·开发语言·后端·面试·并发编程·内存泄漏·threadlocal
紧跟先前的步伐12 分钟前
Go AI Agent 实战 28|Agent 的预算、超时与停止条件
开发语言·人工智能·后端·ai·golang
秋天的怀念_David16 分钟前
算法一千零一夜 · 第二十六夜 协议的母语
java·spring boot·算法
灿飞16 分钟前
Kotlin与Java虚拟机八:控制流与 when:卫语句、上下文相关解析与穷尽性
java·kotlin
文丑颜不良啊1 小时前
LeetCode2021~2040题目解析
java·leetcode
bksczm1 小时前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
春涧草茶2 小时前
慢就是快16-1协程
开发语言·前端·python
liangbo72 小时前
Spring系列03:Bean 的三种注册方式
java·spring
余槐i2 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
SL_staff2 小时前
制造业订单交付总在最后一刻爆雷?用结构化计划模板打通跨系统协同断点
java·开源·全栈