单列集合顶层接口collection,集合的遍历方法

集合分类

集合分为单列集合和双列集合

而我们之前学习的arraylist集合只是单列集合中的一种

顾名思义,单列集合每次只能添加一种元素,而双列集合每次能够添加两组元素

collection

collection是单列集合的祖宗接口,它的功能是全部单列集合都可以继承使用的

它里面有许多的实现方法

1.public boolean add(E e):把给定的对象添加到当前集合中

ini 复制代码
Collection<String> o1=new ArrayList<>();
o1.add("zhang");

2.public boolean clear():清空当前所有的元素

ini 复制代码
Collection<String> o1=new ArrayList<>();
o1.add("zhang");
o1.clear();

返回[]

3.public boolean remove():把给定对象在当前集合中删除

csharp 复制代码
Collection<String> o1=new ArrayList<>();
o1.add("zhang");
o1.remove("zhang")

返回[]

4.public boolean isEmpty():判断当前集合是否为空,

底层是判断集合的长度是否为0.

5.public int size():返回集合中元素的个数/集合的长度

集合的遍历

1.迭代器遍历interator

markdown 复制代码
    迭代器在Java中的类是iterator,迭代器是集合专用的遍历方式
    

既然是类那么使用肯定要创建对象啦

ini 复制代码
Iterator<String> it=o1.iterator();

<>表示要集合里面元素类型,当然基本数据类型要使用包装类才能够使用

而迭代器对象默认指向当前集合的0索引(有点类似C语言的指针)

iterator中也有几个方法来帮助我们遍历数组

boolean hasNext():判断当前位置是否有无元素,有元素返回true,没有元素返回false

E next():获取当前位置的元素,并将迭代器对象移向下一个位置

ini 复制代码
while(it.hasNext()){
    String str = it.next();
    System.out.println(str);
}

遍历的代码就是这样的

遍历完毕后,要想再次遍历只能重新创建对象

当对一个空位置使用next就会报错

而如果在循环中使用两次next,如果集合元素是奇数就会出现上述报错

2.增强for遍历

这种遍历方式比较方便,底层就是迭代器,是为了简化迭代器的代码书写的

所有的单列结合和数组才能用增强for进行遍历

格式:

for(元素的数据类型 变量名:数组或者集合){

} 其中变量名表示 第三方变量,表示每次循环中集合中的元素

ini 复制代码
 Iterator<String> it=o1.iterator();
for (String s : o1) {
    System.out.println(s);
}

3.Lambda方式遍历

在集合的方法中有一种用于遍历的方法forEach(接口的实现类)

实现类可以用匿名内部类来写,而我们之前学了lambda的语法,可以大大简化代码

ini 复制代码
Iterator<String> it=o1.iterator();
o1.forEach((s)->{
    System.out.println(s);
});
相关推荐
风铃儿~12 分钟前
Spring AI 入门:Java 开发者的生成式 AI 实践之路
java·人工智能·spring
斯普信专业组17 分钟前
Tomcat全方位监控实施方案指南
java·tomcat
忆雾屿28 分钟前
云原生时代 Kafka 深度实践:06原理剖析与源码解读
java·后端·云原生·kafka
武昌库里写JAVA41 分钟前
iview Switch Tabs TabPane 使用提示Maximum call stack size exceeded堆栈溢出
java·开发语言·spring boot·学习·课程设计
gaoliheng0061 小时前
Redis看门狗机制
java·数据库·redis
我是唐青枫1 小时前
.NET AOT 详解
java·服务器·.net
Su米苏1 小时前
Axios请求超时重发机制
java
本郡主是喵3 小时前
并发编程 - go版
java·服务器·开发语言
南风lof3 小时前
源码赏析:Java线程池中的那些细节
java·源码阅读