纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

Java8 foreach跳出循环 浅谈Java8 的foreach跳出循环break/return

Ryze丶   2021-07-28 我要评论
想了解浅谈Java8 的foreach跳出循环break/return的相关内容吗,Ryze丶在本文为您仔细讲解Java8 foreach跳出循环的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Java8循环,foreach跳出循环,foreach循环,下面大家一起来学习吧。

java8中跳出循环不能使用break?

通过测试发现:

对于java8中的特殊写法lamada表达式中,不能使用break,会提示错误;

java8中使用return,会跳出当前循环,继续下一次循环,作用类似continue;

java8中使用foreach,但是不是lamada表达式写法,可以正常使用break或者return,可以直接跳出循环.

public class TestForEachJava8 {
	public static void main(String[] args) {		
    	System.out.println("c-------------------");
    	
    	//lamada表达式中foreach使用break
    	List<String> c = Arrays.asList("6666", "7777", "8888", "9999");
    	c.stream().forEach(str ->{
    		if("8888".equals(str)){
    			return; //跳出当前循环,继续下一轮
    		}
    		System.out.println(str);    		
    	});
    	
    	System.out.println("d-------------------");    	
    	List<String> d = Arrays.asList("6666", "7777", "8888", "9999");
    	d.stream().forEach(str ->{
    		System.out.println(str);
    		if("8888".equals(str)){
    			break; //IDE提示错误:break cannot be used outside of a loop or a switch
    		}    		
    	});
    	System.out.println("a-------------------");
		List<String> a  = new ArrayList<>();
    	a.add("1111");
    	a.add("2222");
    	a.add("3333");
    	a.add("4444");
    	for(String str:a){
    		if("3333".equals(str)){
    			break;   //正常跳出循环
    		}
    		System.out.println(str);
    	}
    	
    	System.out.println("b-------------------");    	
    	List<String> b  = new ArrayList<>();
    	b.add("1111");
    	b.add("2222");
    	b.add("3333");
    	b.add("4444");
    	for(String str:b){
    		if("3333".equals(str)){
    			return; //也能跳出循环
    		}
    		System.out.println(str);
    	}    	
	}
}

输出:

c-------------------
6666
7777
9999
d-------------------
6666
7777
8888
9999
a-------------------
1111
2222
b-------------------
1111
2222

java中jdk8的forEach()方法return血的教训!

啊啊啊!记录。。。

JDK8中return竟然不return了。。。

but:::

2、

两个for循环作对比,如下:

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。


相关文章

猜您喜欢

  • Vue echarts可视化组件 Vue使用echarts可视化组件的方法

    想了解Vue使用echarts可视化组件的方法的相关内容吗,你就叫酱油在本文为您仔细讲解Vue echarts可视化组件的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Vue,echarts可视化组件,Vue,可视化组件,下面大家一起来学习吧。..
  • c++ malloc底层 c++中的malloc底层实现代码

    想了解c++中的malloc底层实现代码的相关内容吗,黑猫爱小鹿在本文为您仔细讲解c++ malloc底层的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:c++,malloc底层,c++,malloc,下面大家一起来学习吧。..

网友评论

Copyright 2020 www.freefLashonLinegames.com 【木头下载】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式