跳出多层for循环的几种方式
跳出多层for循环(通过测试!!!)
第一种:给循环加别名(java中可以给最外层的循环加别名,直接跳出循环)
public static void getFor1(int arr) {result: for (int i = 0; i < arr; i++) {//System.out.println("i = " + i);for (int j = 0; j < arr; j++) {//System.out.println("j = " + j);if (i == 2 && j == 2) {break result;}}}}
第二种:自给自足(一层一层往出跳)
public static void getFor6(int arr) {for (int i = 0; i < arr; i++) {//System.out.println("i = " + i);for (int j = 0; j < arr; j++) {//System.out.println("j = " + j);if (j == 2) {break;}}if (i == 2) {break;}}}
第三种:循环体定义额外跳出变量(观看许多别人的作品,他们这块都错了,没有理解额外变量的含义啊)
==别人的作品源码==不可能实现跳出
// 不可实现public static void getFor3(int arr) {boolean flag = false;for (int i = 0; i < arr; i++) {//System.out.println("i = " + i);for (int j = 0; j < arr; j++) {//System.out.println("j = " + j);if (i == 2 && j == 2) {flag = true;break;}}}}
==改进后==增加判断条件
public static void getFor2(int arr) {boolean flag = false;for (int i = 0; i < arr; i++) {//System.out.println("i = " + i);for (int j = 0; j < arr; j++) {//System.out.println("j = " + j);if (i == 2 && j == 2) {flag = true;break;//直接return也可以,但是增加变量无意义,下一个是增加return结果}}if (flag == true) {break;}}}
第三种:直接return
public static void getFor4(int arr) {for (int i = 0; i < arr; i++) {//System.out.println("i = " + i);for (int j = 0; j < arr; j++) {//System.out.println("j = " + j);if (i == 2 && j == 2) {return;}}}}
第四种:抛出异常,强行停止
public static void getFor5(int arr) {try {for (int i = 0; i < arr; i++) {//System.out.println("i = " + i);for (int j = 0; j < arr; j++) {//System.out.println("j = " + j);if (i == 2 && j == 2) {throw new Exception();}}}} catch (Exception e) {// System.out.println(e);}}
第四种:退出jvm慎用
// 退出jvm,慎用public static void getFor7(int arr) {for (int i = 0; i < arr; i++) {//System.out.println("i = " + i);for (int j = 0; j < arr; j++) {//System.out.println("j = " + j);if (i == 2 && j == 2) {System.exit(0);}}}}
测试语句
没有从上到下按顺序测试,理解一下
public static void main(String[] args) {// getFor1(5);//满足循环跳出// getFor2(5);//满足循环跳出// getFor3(5);//不满足循环跳出条件// getFor4(5);//满足循环跳出// getFor5(5);//满足循环跳出// getFor6(5);//满足循环跳出// getFor7(5);//满足循环跳出}
原创博客,转载请注明,谢谢!!!
跳出多层for循环的几种方式相关推荐
- java跳出for循环_Java跳出多层for循环的4种方式
Java跳出多层for循环的4种方式 一.使用return关键字控制 for (int i = 0;i<10;i++){ for (int j = 0; j<10; j++) { if ( ...
- Java循环的三种方式分享
转自: Java循环的三种方式分享 下文笔者讲述java循环的三种方式分享,如下所示 一.while循环 while语法:while(循环条件){循环体}while关键字处理循环先判断循环条件当条件成 ...
- Java 8 跳出foreach循环,跳出本次循环,继续执行,之前的for each循环如何跳出本次循环,跳出循环,跳出多层for循环。
在Java8之前,最开始使用for i 循环,很老旧, 后来有了高级的for each 循环,然后这个跳出本次循环和跳出所有的for循环,都简单,稍微没见过的就是跳出多层for循环. 然后就是Java ...
- shell - 循环的2种方式
shell - 循环的2种方式 0, 题目描述 以打印0-50以内7的倍数为列 1, for循环 1.1 常规for循环 #!/bin/bash for((i=0; i<50; i+=7)) d ...
- java中Map循环的几种方式
package com.xhx.collection;import org.junit.Test;import java.util.HashMap; import java.util.Iterator ...
- break跳出多层while循环标志位
有时候我们写while循环时是多层嵌套的,有多个while语句,如果满足某一条件break的话,因为break只能跳出与之最近的while或for循环,但是我们不想写很多个判断条件,这样代码的有效性和 ...
- Java循环的三种方式
一. while循环 语法: while(循环条件){ 循环体: } while循环先判断循环条件,如果条件成立,则执行循环体,循环完成后再判断一次循环条件,若成立,则继续执行循环体,直 ...
- Map 集合的循环遍历 4 种方式
public static void main(String[] args) {Map<String, Object> map = new HashMap<String, Objec ...
- 盘点用jQuery框架实现“for循环”的四种方式!
目录 一.JS的遍历方式 二.JQuery的遍历方式 1. jQuery对象.each(callback) 2. $.each(object, [callback]) 3. for..of方法 Hel ...
最新文章
- jmeter 线程组与参数_jmeter接口测试基础篇之初步认识及参数化请求
- 深圳当代艺术家的一次聚会
- 美团内推:java高级开发(一面+二面+三面),面试58题实拍!
- C++使用流进行输入输出
- WPF学习笔记一 依赖属性及其数据绑定
- 企业税银数据深度分析(上)
- 开发者点评GitHub 暗黑模式:太暗了
- 铵钮提交事件PostBack之后,一些动态加载的物件丢失
- Google Test Primer(四)——简单测试
- 算法学习:蝙蝠算法简介
- 用计算机制作flash动画教案,最新最完整Flash动画制作教案.doc
- 机器人操作系统、自动驾驶等研发工具整理
- 懒人的法宝——办公自动化!
- java用打印机打印小票_使用CUPS和热敏打印机打印postscript文档
- python-套接字基础与 UDP 通信
- 五、 Usb setting 中tethering 设置流程
- STM32 —— OLED 屏幕入门
- 项目经理培训后的一点感概
- java中定义一个时间_Java中的日期和时间
- 168-203-javajvm-垃圾收集器