zoukankan      html  css  js  c++  java
  • JAVA跳出指定For循环

    1. 问题描述

    当有多个for循环的时候,如何跳出最外层循环?

    2. 解决方案

    2.1 正常单个for循环

    package com.example.demo;
    
    public class TestFor {
    
        public static void main(String[] args) {
    
            for (int i = 0; i < 6; i++) {
    
                System.out.println(i);
            }
    
        }
    }
    
    结果:
    0
    1
    2
    3
    4
    5
    

    跳出单层循环,使用break正常跳出。

    package com.example.demo;
    
    public class TestFor {
    
    
        public static void main(String[] args) {
    
            for (int i = 0; i < 6; i++) {
                if (i > 3) {
                    break;
                }
                System.out.println(i);
            }
    
        }
    }
    结果:
    0
    1
    2
    3
    

    2.2 多层循环的情况,使用break仅仅是跳出了最里面的循环。

    package com.example.demo;
    
    public class TestFor {
    
    
        public static void main(String[] args) {
    
    
            for (int j = 0; j < 2; j++) {
                for (int i = 0; i < 6; i++) {
                    if (i > 3) {
                        break;
                    }
                    System.out.println("----IIII值:"+i);
                }
                System.out.println("----JJJJ值:"+j);
            }
    
    
        }
    }
    
    结果:
    ----IIII值:0
    ----IIII值:1
    ----IIII值:2
    ----IIII值:3
    ----JJJJ值:0
    ----IIII值:0
    ----IIII值:1
    ----IIII值:2
    ----IIII值:3
    ----JJJJ值:1
    

    从结果可以看出,当i大于3的时候,跳出了最里面的i循环,但是外层的j循环还是正常执行了。

    2.3 跳出指定层循环

    package com.example.demo;
    
    public class TestFor {
    
    
        public static void main(String[] args) {
    
            jj:
            for (int j = 0; j < 2; j++) {
                ii:
                for (int i = 0; i < 6; i++) {
                    if (i > 3) {
                        break jj;
                    }
                    System.out.println("----IIII值:"+i);
                }
                System.out.println("----JJJJ值:"+j);
            }
    
    
        }
    }
    
    结果:
    ----IIII值:0
    ----IIII值:1
    ----IIII值:2
    ----IIII值:3
    

    ​ 简单来说就是给for循环起个名字,命名规则是:名字+半角冒号,例如:jj:,然后在break后面跟上名字,就跳出对应for循环。


  • 相关阅读:
    Explainable ML
    Fizz Buzz in tensorflow
    Tips for traing DNN (Adam,正则化,Dropout)
    深度学习 高数知识
    perror strerror使用方法
    posix信号量与互斥锁
    线程基本操作(一)
    system v共享内存与信号量综合
    shell统计当前文件夹下的文件个数、目录个数
    栈 c实现
  • 原文地址:https://www.cnblogs.com/ruanjianlaowang/p/11182555.html
Copyright © 2011-2022 走看看