Java 8 跳出foreach循环,跳出本次循环,继续执行,之前的for each循环如何跳出本次循环,跳出循环,跳出多层for循环。

article/2025/8/29 5:35:04

在Java8之前,最开始使用for i 循环,很老旧,

后来有了高级的for each 循环,然后这个跳出本次循环和跳出所有的for循环,都简单,稍微没见过的就是跳出多层for循环。

然后就是Java8出的foreach循环,这个循环里面,break和continue都不管用啦。

需要使用return,这个只能跳过本次循环,还是会继续执行for循环的。

那么怎么跳出这个Java8的foreach循环呢?

下面对所有的循环,都来了一次操作。

看看如何,跳出当前循环,继续执行;或者直接跳出for循环;或者跳出多层for循环。

package com.lxk.java8.lambdaTest;import java.util.Arrays;
import java.util.List;
import java.util.Optional;/*** 跳出for循环** @author LiXuekai on 2018/10/23*/
public class BreakForeach {public static void main(String[] args) {int max = 5;List<String> list = Arrays.asList("123", "12345", "1234", "4321", "1234567", "5678");continueForeachJava8(max, list);System.out.println();breakForeachJava8(max, list);System.out.println();continueFor(max, list);System.out.println();breakFor(max, list);System.out.println();breakManyFor(max, list);}/*** Java8跳过一次foreach循环,然后继续执行。*/private static void continueForeachJava8(int max, List<String> list) {list.forEach(s -> {if (s.length() >= max) {return;}System.out.println(s);});}/*** 跳出Java8的foreach循环* 还这没找到,怎么跳出*/private static void breakForeachJava8(int max, List<String> list) {//这么做是不对的//try {//    list.forEach(s -> {//        if (s.length() >= max) {//            throw new Exception();//        }//        System.out.println(s);//    });//} catch (Exception e) {//    System.out.println(e.getMessage());//}//看需求,建议使用如下之一。Optional<String> result = list.stream().filter(s -> s.length() >= max).findFirst();System.out.println(result.orElse(null));boolean lxk = list.stream().anyMatch(s -> s.length() >= max);System.out.println(lxk);}/*** continue 跳过本次循环,继续执行。*/private static void continueFor(int max, List<String> list) {for (String s : list) {if (s.length() >= max) {continue;}System.out.println(s);}}/*** break 是直接跳出for循环,不再继续执行for循环到代码了。*/private static void breakFor(int max, List<String> list) {for (String s : list) {if (s.length() >= max) {break;}System.out.println(s);}}/*** break lxk 是直接跳出多层for循环,不再继续执行for循环到代码了。*/private static void breakManyFor(int max, List<String> list) {lxk:for (String s1 : list) {System.out.println("第一层:" + s1);for (String s2 : list) {System.out.println("第二层:" + s2);for (String s3 : list) {if (s3.length() >= max) {break lxk;}System.out.println("第三层:" + s3);}}}}}

下面是上面的代码的运行结果,可以对照着看一下。

大师兄

最后是对于:跳出Java8的lambda的foreach循环的说明,摘自某stackflow。

大师兄


http://chatgpt.dhexx.cn/article/1VQdmrS4.shtml

相关文章

js中的for循环如何跳出,js中for循环的两种语法

js几种for循环的几种用法 谷歌人工智能写作项目&#xff1a;小发猫 js&#xff0c;for循环是怎么运行的&#xff1f; typescript有哪些变化。 最普遍的介绍&#xff1a;for循环是JavaScript中最常用的循环&#xff0c;标准for循环代码格式为&#xff1a;for(定义变量初始值;…

if/while/do-while/for循环以及跳出循环break/return/continue

流程控制对任何一门编程语言都是至关重要的&#xff0c;它为我们提供了控制程序步骤的基本手段。常见对主要分为&#xff0c;条件语句、循环语句、跳转语句。 1、if语句 if 语句是一种判断语句。 语法&#xff1a; if(条件){条件成立时执行的代码 } if...else 语句当条件成…

Python中跳出循环的两种方法

我们经常遇到循环在进行到某一个特定的值时&#xff0c;需要跳出循环&#xff0c;或跳过这个值&#xff0c;python中早已为我们准备了这样的参数:break,continue 比如下面的for循环&#xff1a; for i in range(1,10):print(循环了,i,次) 结果显而易见如图&#xff1a; 当我…

js foreach与for循环之return跳出循环

因为自己比较大只&#xff0c;容易忘记&#xff0c;仅此用来记录一下~ 各种循环中使用return或者退出循环的机制。 1、forEach 使用 return 可以退出循环吗&#xff1f;下面代码打印啥&#xff1f; const list [1, 2, 3, 4, 5]list.forEach(e > {if (e 3) {return}consol…

JS中如何跳出.forEach循环

写在前面 提到在一段程序中如果碰到需要终止&#xff0c;结束一个循环&#xff0c;函数或者一段代码&#xff0c;一般会想到以下这几个关键字return、continue、break 简述一下三者的区别&#xff1a; break: 终止整个循环(有内层循环时终止的是内层循环)&#xff0c;退出swi…

JavaScript foreach 方法跳出循环

通常&#xff0c;在 for循环中跳出循环可以用 break或者 continue 来跳出循环。 break&#xff1a;跳出循环&#xff1b; continue&#xff1a;跳过当次循环。 而有时候需要在 foreach 中跳出循环&#xff0c;该怎么做呢&#xff1f; forEach() 方法用于调用数组的每个元素&am…

C++跳出for循环的方式

注&#xff1a;continue只能跳出当前层的循环&#xff0c;无法直接跳出for循环 方法1&#xff1a; for循环中满足条件后使用break语句&#xff1b; #include <iostream> using namespace std;int main(int argc,char *argv[]) {int i;for(i0;i<5;i){if(i2)break;}cou…

Js之跳出for循环,跳出多次for循环详解

一、for循环退出方式 首先我们都知道循环中最常用的就是continue;break; continue:表示跳出本次循环&#xff0c;也就是不执行本次循环continue之后的操作 break:表示跳出当前的循环&#xff0c;针对整个循环体终止后续的遍历&#xff1b; 最简单的应用效果如下&#xff1a; …

layui遮罩

layui遮罩 在执行某个按钮功能时,可能出现网络延迟或是其他原因时 避免重复表单提交,用遮罩.此次请求不响应,执行完毕,就一直遮罩住其他功能 var loading layer.load(1, {shade: [0.8, #393D49], time: 0}); layer.close(loading);写的位置 在请求开启之前遮住 在请求响应之…

遮罩Mask

一、遮罩&#xff1a;遮罩层范围内可看见被遮罩层图层&#xff0c;遮挡层范围可看见笼罩层图形 遮罩层必须至少有两个图层&#xff0c;上面的一个图层为“遮罩层”&#xff0c;下面的称“被遮罩层”&#xff1b;这两个图层中只有相重叠的地方才会被显示。也就是说在遮罩层中有…

基于vue3.0的遮罩

前言 最近在uniapp中要写一个弹窗&#xff0c;弹窗好写&#xff0c;但是遮罩没有接触过。找到了下面这篇文章&#xff0c;推荐仔细阅读一下。在这篇文章的基础下&#xff0c;简单封装了一个遮罩。 推荐文章&#xff1a;论如何用Vue实现一个弹窗-一个简单的组件实现 遮罩 备…

html5 div遮罩,CSS3 遮罩属性

遮罩(Mask)和Photoshop里的蒙版效果含义一致&#xff0c;用于为指定元素建立一个覆盖在上面的遮罩层。它显示在元素之上&#xff0c;和背景效果使用起来正好相反。我们可以使用遮罩在元素上方叠加一幅图或者一个渐变效果。 遮罩、内容和背景效果的显示层次如下图所示&#xff1…

html添加遮罩

html添加遮罩的代码如下所示 使用divcss &#xff0c;加载中的图片是网上下载的动图&#xff0c;可以根据自己需要进行修改 <!DOCTYPE html> <html> <head><title>DIV CSS遮罩层</title><script language"javascript" type"t…

Android渐变遮罩

Android Studio版本&#xff1a; Android Studio Chipmunk 这篇文章介绍如何在Android中实现这样的渐变遮罩 依赖项 1.CardView 在app下的build.gradle中添加依赖&#xff0c;并且完成编译 dependencies {implementation androidx.cardview:cardview:1.0.0 } 2.两张svg图片…

Blender 利用遮罩剔除顶点

&#x1f369;mask &#x1f367;效果&#x1f961;步骤&#x1f366;mask贴图制作&#x1f364; 添加顶点权重编辑&#x1f957;添加mask&#x1f35f;应用修改 &#x1f367;效果 &#x1f961;步骤 &#x1f366;mask贴图制作 &#x1f4a1; 本次教程参考以下贴图制作mas…

Unity之ASE 图片遮罩

前言 当一张图片,我们希望它只显示一部分时,就可以使用一张特定的遮罩图来控制它的显示。 比如下图,我们希望它的边缘变成圆角,且过渡自然。 我们就可以和下面的遮罩图进行融合。 最后出来的效果如下图所示: 原理 原理很简单,我们只使用了一个Multiply相乘即可 我们…

手写遮罩层

&#xff08;注&#xff1a;图文不符&#xff0c;仅供参考&#xff09; 遮罩层原理 就是当出现弹窗或者确认框的时候&#xff0c;点击弹窗外的地方不会触发别的响应&#xff0c;只是单纯地关闭弹窗&#xff08;或者不关闭也不触发其他响应&#xff09; 遮罩层的简单写法 任意…

利用Openlayers4实现地图遮罩效果(三)

文章目录 前言完整代码效果 代码解读完整项目代码(含测试数据&#xff09; 前言 之前写的关于利用openlayer创建遮罩的文章&#xff08;原文&#xff09;&#xff0c;那篇文章主要是讲如何创建一个四周遮罩&#xff08;即四周外围遮罩但露出目标中心区域&#xff09;。后面有很…

前端遮罩层实现_前端制作遮罩与蒙版

-1 遮罩: 有色则显示,无色抠取,半透明则半透明 蒙版: 黑色则抠除,白色显示,灰色则半透明 概念上两者非常容易混淆,但完成的效果是一样的,需记住哪个是无色抠取,哪个是黑色抠除。 再者还有个裁剪,只是做裁切,没有对半透明情况的处理。 这样一说就知道,本文阅读起来可…

elementui 遮罩

今日突发奇想&#xff0c;在之前的项目中是通过jQyery layUI实现遮罩效果的&#xff0c;效果如图 ​​​​​​​ 但jQuery和layUI的时代已经过去了&#xff0c;于是思考了一下如何通过VUE elementUI实现遮罩效果&#xff0c;本人没亲手实现&#xff0c;但目测通过elementU…