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

相关推荐
_oP_i1 小时前
Pinpoint 是一个开源的分布式追踪系统
java·分布式·开源
mmsx1 小时前
android sqlite 数据库简单封装示例(java)
android·java·数据库
bryant_meng1 小时前
【python】OpenCV—Image Moments
开发语言·python·opencv·moments·图片矩
武子康1 小时前
大数据-258 离线数仓 - Griffin架构 配置安装 Livy 架构设计 解压配置 Hadoop Hive
java·大数据·数据仓库·hive·hadoop·架构
若亦_Royi1 小时前
C++ 的大括号的用法合集
开发语言·c++
资源补给站2 小时前
大恒相机开发(2)—Python软触发调用采集图像
开发语言·python·数码相机
豪宇刘2 小时前
MyBatis的面试题以及详细解答二
java·servlet·tomcat
秋恬意2 小时前
Mybatis能执行一对一、一对多的关联查询吗?都有哪些实现方式,以及它们之间的区别
java·数据库·mybatis
m0_748247552 小时前
Web 应用项目开发全流程解析与实战经验分享
开发语言·前端·php
6.943 小时前
Scala学习记录 递归调用 练习
开发语言·学习·scala