Java List集合 遍历 四种方式(包含 Lambda 表达式遍历)
示例代码如下:
package com.miracle.luna.lambda; import java.util.ArrayList;
import java.util.List; /**
* @Author Miracle Luna
* @Date 2019/6/9 23:36
* @Version 1.0
*/
public class ListLambda {
public static void main(String[] args) {
List<String> items = new ArrayList<>(); items.add("A");
items.add("B");
items.add("C"); // 普通for循环遍历
System.out.println("第一种遍历方式:普通for循环遍历 List 集合");
for (int i = 0; i < items.size(); i++) {
System.out.println(items.get(i));
} // 增强for循环遍历
System.out.println("\n第二种遍历方式:增强for循环遍历 List 集合");
for (String item : items) {
System.out.println(item);
} // Lambda 表达式遍历(JDK 1.8)
System.out.println("\n第三种遍历方式:Lambda 表达式遍历 List 集合");
items.forEach(item->{
System.out.println(item);
}); // Lambda 表达式遍历(JDK 1.8)
System.out.println("\n第四种遍历方式:Lambda 表达式遍历 List 集合");
items.forEach(System.out::println); // 普通for循环遍历,判断List集合中是否包含字符串“C”
System.out.println("\n第一种判断方式:普通for循环遍历,判断List集合中是否包含字符串“C”");
for (int i = 0; i < items.size(); i++) {
if ("C".equals(items.get(i))){
System.out.println(items.get(i));
}
} // 增强for循环遍历,判断List集合中是否包含字符串“C”
System.out.println("\n第二种判断方式:增强for循环遍历,判断List集合中是否包含字符串“C”");
for (String item : items) {
if ("C".equals(item)){
System.out.println(item);
}
} // Lambda 表达式 判断List集合中是否包含字符串“C”(JDK 1.8)
System.out.println("\n第三种判断方式:Lambda 表达式,判断List集合中是否包含字符串“C”");
items.forEach(item->{
if ("C".equals(item)){
System.out.println(item);
}
}); // Lambda 表达式 判断List集合中是否包含字符串“C”(JDK 1.8)
System.out.println("\n第四种判断方式:Lambda 表达式,判断List集合中是否包含字符串“C”");
items.stream().filter(s->s.equals("C")).forEach(System.out::println);
}
}
运行结果如下:
第一种遍历方式:普通for循环遍历 List 集合
A
B
C
第二种遍历方式:增强for循环遍历 List 集合
A
B
C 第三种遍历方式:Lambda 表达式遍历 List 集合
A
B
C 第四种遍历方式:Lambda 表达式遍历 List 集合
A
B
C 第一种判断方式:普通for循环遍历,判断List集合中是否包含字符串“C”
C 第二种判断方式:增强for循环遍历,判断List集合中是否包含字符串“C”
C 第三种判断方式:Lambda 表达式,判断List集合中是否包含字符串“C”
C 第四种判断方式:Lambda 表达式,判断List集合中是否包含字符串“C”
C
PS:
总结,参考如下:
Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)
https://www.cnblogs.com/miracle-luna/p/10995539.html
Array数组 遍历 四种方式(包含 Lambda 表达式遍历)
https://www.cnblogs.com/miracle-luna/p/10995469.html
List集合 遍历 四种方式(包含 Lambda 表达式遍历)
https://www.cnblogs.com/miracle-luna/p/10995400.html
Map集合 遍历 五种方式(包含 Lambda 表达式遍历)
https://www.cnblogs.com/miracle-luna/p/10995132.html
Java List集合 遍历 四种方式(包含 Lambda 表达式遍历)的更多相关文章
- Java Array数组 遍历 四种方式(包含 Lambda 表达式遍历)
示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...
- Java Map集合 遍历 五种方式(包含 Lambda 表达式遍历)
示例代码如下: package com.miracle.luna.lambda; import java.util.HashMap; import java.util.Iterator; import ...
- JAVA解析XML的四种方式
java解析xml文件四种方式 1.介绍 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准.DOM是以层次结构组织的节点或信息片断的集合.这 ...
- Java创建线程的四种方式
Java创建线程的四种方式 1.继承Thread类创建线程 定义Thread类的子类,并重写该类的run方法,run()方法的内容就是该线程执行的内容 创建Thread子类的实例,即创建了线程对象. ...
- java 20 -10 字节流四种方式复制mp3文件,测试效率
电脑太渣,好慢..反正速率是: 高效字节流一次读写一个字节数组 > 基本字节流一次读写一个字节数组 > 高效字节流一次读写一个字节 > 基本字节流一次读写一个字节 前两个远远快过后面 ...
- java线程实现的四种方式
java多线程的实现可以通过以下四种方式 1.继承Thread类,重写run方法 2.实现Runnable接口,重写run方法 3.通过Callable和FutureTask创建线程 4.通过线程池创 ...
- Java添加事件的四种方式
Java添加事件的几种方式(转载了codebrother的文章,做了稍微的改动) /** * Java事件监听处理——自身类实现ActionListener接口,作为事件监听器 * * @author ...
- java解析xml文件四种方式
1.介绍 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准.DOM是以层次结构组织的节点或信息片断的集合.这个层次结构允许开发人员在树中寻找 ...
- JAVA解析xml的四种方式比较
1)DOM解析 DOM是html和xml的应用程序接口(API),以层次结构(类似于树型)来组织节点和信息片段,映射XML文档的结构,允许获取 和操作文档的任意部分,是W3C的官方标准 [优点] ①允 ...
随机推荐
- Nginx的软件架构
nginx原理架构图 Nginx是 master/worker 模型 一个master进程,可生成一个或多个worker进程,每个worker进程基于事件驱动机制响应客户端请求: 事件驱动机制:epo ...
- ValueError:Object arrarys cannot be loaded when allow_pickle=False
运行python程序报错:ValueError:Object arrarys cannot be loaded when allow_pickle=False 错误原因:numpy版本太高 解决方案: ...
- 牛客练习赛47 E DongDong数颜色 (树上启发式合并)
链接:https://ac.nowcoder.com/acm/contest/904/E 来源:牛客网 DongDong数颜色 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 5242 ...
- RWD(Responsive Web Design)(转)
The key point is adapting to the user’s needs and device capabilities. Suppose a mobile user will be ...
- Codeforces Round #593 (Div. 2) D. Alice and the Doll
题目:http://codeforces.com/problemset/problem/1236/D思路:机器人只能按照→↓←↑这个规律移动,所以在当前方向能够前进的最远处即为界限,到达最远处右转,并 ...
- 使用Vue做个简单的评论 + localstorage存储
1.引入Vue.js 2.编写代码 代码 <!DOCTYPE html> <html lang="zh"> <head> <meta c ...
- Oracle数据库查询优化方案
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引.2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引 ...
- Python实现ANSI文件转UTF-8
ANSI编码的文件转为UTF-8编码的文件. # ANSI文件转UTF-8 import codecs import os # 文件所在目录 file_path = "H:\Python\S ...
- 【SQL-不重复插入】一条语句实现,插入不重复的记录到数据库
Insert新纪录时,先查询SQL数据库中是否存在相同记录,如果存在,则不插入. if not exists(select count(*) from [Admin] where Name='adm ...
- 基于MaxCompute InformationSchema进行血缘关系分析
一.需求场景分析 在实际的数据平台运营管理过程中,数据表的规模往往随着更多业务数据的接入以及数据应用的建设而逐渐增长到非常大的规模,数据管理人员往往希望能够利用元数据的分析来更好地掌握不同数据表的血缘 ...