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

相关推荐
测试员周周2 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
Mahir085 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析
java·后端·spring·缓存·面试·循环依赖·三级缓存
杜子不疼.5 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
加号35 小时前
【C#】 串口通信技术深度解析及实现
开发语言·c#
sycmancia6 小时前
Qt——编辑交互功能的实现
开发语言·qt
RyFit6 小时前
SpringAI 常见问题及解决方案大全
java·ai
石山代码6 小时前
C++ 内存分区 堆区
java·开发语言·c++
绝知此事6 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表
无风听海6 小时前
C# 隐式转换深度解析
java·开发语言·c#
一只大袋鼠7 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git