重学Java之for循环

Java提供了三种不同的for循环方式:

  • fori
  • foreach
  • Stream.foreach

fori

java 复制代码
for (int i = 0; i < arrayList.size(); i++) {
    // 执行操作
}

fori是Java最早的for循环形式。随着Java语法的不断改进以及JDK 8的推出,这种方式在实际企业开发中并不常见,大多出现在传统的大学教材中。如今,甚至阿里巴巴的代码检测插件也建议将fori形式转换为foreach形式。

foreach

java 复制代码
for (String s : arrayList) {
    // 执行操作
}

也称为增强for循环,是对fori的语法糖。在编译时,foreach会自动转换为fori的形式。

Stream.foreach

java 复制代码
arrayList.forEach(array -> {
    // 执行操作
});

这是在JDK 1.8之后引入的一种for循环方式,结合lambda表达式使用。代码更加简洁,可以与其他新特性配合使用,以最简洁的形式完成复杂操作。但需要注意,使用该方式时,returnbreak不能像前两种方式那样达到同样的目的。

代码测试

java 复制代码
ArrayList<Integer> integers = Lists.newArrayList(1, 2, 3, 4, 5);
integers.forEach(i -> {
	if (i == 2) {
		System.out.println(i);
		return;
	}
	System.out.println("当前值" + i);
});

for (Integer i : integers) {
	if (i == 2) {
		System.out.println(i);
		continue;
	}
	System.out.println("当前值" + i);
}
}

在Stream.foreach中,无法使用break 关键字。然而,可以使用return来跳出当前循环。

后续内容文章持续更新中...

近期发布。


关于我

👋🏻你好,我是Debug.c。微信公众号:种棵代码技术树 的维护者,一个跨专业自学Java,对技术保持热爱的bug猿,同样也是在某二线城市打拼四年余的Java Coder。

🏆在掘金、CSDN、公众号我将分享我最近学习的内容、踩过的坑以及自己对技术的理解。

📞如果您对我感兴趣,请联系我。

若有收获,就点个赞吧,喜欢原图请私信我。

相关推荐
青山师6 小时前
动态代理深度解析:JDK与CGLIB底层实现与实战
java·设计模式·面试·动态代理·java面试·cglib
放学后的泡泡6 小时前
提供一个工作流的表设计
java·设计规范
生活真难6 小时前
SpringCloud - 任务调度 - xxl-job-java
java·spring boot·spring cloud
人道领域7 小时前
【黑马点评日记】:用户签到功能详解——从Bitmap入门到避坑指南
java·数据库·redis·后端
梦梦代码精7 小时前
《企业开源商城选型:商业闭环、二次开发与成本平衡》
java·开发语言·低代码·开源·github
狼与自由7 小时前
灰度发布的策略
java
神仙别闹7 小时前
基于QT(C++)实现线性表的建立、插入、删除、查找等基本操作
java·c++·qt
Kiyra8 小时前
从上传到可问答:Interview Agent 的知识库 RAG 链路
java·人工智能·后端·spring·职场和发展
拙野8 小时前
工作中Mybatis动态SQL的使用
java·sql·mybatis
AI人工智能+电脑小能手8 小时前
【大白话说Java面试题】【Java基础篇】第39题:说说反射的用途及实现原理,Java获取反射(Class)的三种方法
java·开发语言·后端·python·面试