java中的break、continue、return区别

比眉伴天荒 2022-09-26 13:52 242阅读 0赞

1、break:可以用于for循环等循环体和开关语句switch case中;

用在循环中时,break是指跳出当前的循环体,如果是嵌套循环的话,只能跳出离break最近的for循环层;例如:

  1. public static void main(String[] args) {
  2. for (int i = 0; i<=5; i++) {
  3. if (i == 3){
  4. System.out.println("我是3,我要跳出循环了,后面的都不能执行了ㄟ(⊙ω⊙ㄟ)");
  5. break;
  6. }
  7. System.out.println(i);
  8. }
  9. }

运行结果:

  1. 0
  2. 1
  3. 2
  4. 我是3,我要跳出循环了,后面的都不能执行了ㄟ(⊙ω⊙ㄟ)

Java中,如何跳出当前的多重嵌套循环?
在最外层循环前加一个标记如flag,然后用break flag;可以跳出多重循环。

用于开关语句switch case中:break可使程序跳出switch而执行switch以后的语句;
此时分两种情况:
1、如果满足条件的case有break,则直接跳出switch语句;
2、如果满足条件的case没有break,此时又分两种情况:
  2.1、之后的case也都没有break,就从满足条件的那个case开始执行,直到执行完default后结束;
  2.2、之后的case有一个或多个break,就从满足条件的那个case开始执行,直到遇到break后结束;
例子1:

  1. public static void main(String[] args) {
  2. int flag = 3;
  3. switch (flag) {
  4. case 1:
  5. System.out.println("1");
  6. break;
  7. case 2:
  8. System.out.println("2");
  9. break;
  10. case 3:
  11. System.out.println("flag为3,此时case为3且有break,结束switch");
  12. break;
  13. case 4:
  14. System.out.println("4");
  15. break;
  16. case 5:
  17. System.out.println("5");
  18. break;
  19. default:
  20. System.out.println("default");
  21. }
  22. }

运行结果:

  1. flag3,此时case3且有break,结束switch

例子2.1:

  1. public static void main(String[] args) {
  2. int flag = 3;
  3. switch (flag) {
  4. case 1:
  5. System.out.println("1");
  6. break;
  7. case 2:
  8. System.out.println("2");
  9. break;
  10. case 3:
  11. System.out.println("3");
  12. //break;
  13. case 4:
  14. System.out.println("4");
  15. //break;
  16. case 5:
  17. System.out.println("5");
  18. //break;
  19. default:
  20. System.out.println("等于3的case,没有break,且之后的case也都没有break,则一直执行到default才结束");
  21. }
  22. }

输出结果:

  1. 3
  2. 4
  3. 5
  4. 等于3case,没有break,且之后的case也都没有break,则一直执行到default才结束

例子2.2:

  1. public static void main(String[] args) {
  2. int flag = 3;
  3. switch (flag) {
  4. case 1:
  5. System.out.println("1");
  6. break;
  7. case 2:
  8. System.out.println("2");
  9. break;
  10. case 3:
  11. System.out.println("3");
  12. //break;
  13. case 4:
  14. System.out.println("4");
  15. //break;
  16. case 5:
  17. System.out.println("等于3的case,没有break,但我有break,则执行到我这里就结束");
  18. break;
  19. default:
  20. System.out.println("default");
  21. }
  22. }

运行结果:

  1. 3
  2. 4
  3. 等于3case,没有break,但我有break,则执行到我这里就结束

2、continue :当只有一层循环时,结束当前循环的本次循环,当有循环嵌套时,结束本层循环的本次循环;

  1. public static void main(String[] args) {
  2. for (int i = 0; i<=5; i++) {
  3. if (i == 3){
  4. System.out.println("我是3,因为continue,只是我输出不了,后面的仍然能执行ㄟ(⊙ω⊙ㄟ)");
  5. continue;
  6. }
  7. System.out.println(i);
  8. }
  9. }

运行结果:

  1. 0
  2. 1
  3. 2
  4. 我是3,因为continue,只是我输出不了,后面的仍然能执行ㄟ(⊙ω⊙ㄟ)
  5. 4
  6. 5

3、return:跳出当前方法;
如果方法返回值是void,则直接用return;
如果方法返回值是String等类型,则需要retrun “”;
例子:

  1. public static void main(String[] args) {
  2. for (int i = 0; i<=5; i++) {
  3. if (i == 3){
  4. System.out.println("我是3,因为continue,只是我输出不了,后面的仍然能执行ㄟ(⊙ω⊙ㄟ)");
  5. return;
  6. }
  7. System.out.println(i);
  8. }
  9. }

运行结果:

  1. 0
  2. 1
  3. 2
  4. 我是3,因为continue,只是我输出不了,后面的仍然能执行ㄟ(⊙ω⊙ㄟ)

发表评论

表情:
评论列表 (有 0 条评论,242人围观)

还没有评论,来说两句吧...

相关阅读

    相关 java&和&&区别

    &和&&都是逻辑运算符,用于判断两边同时为真则为真,否则为假。 但是&&当第一个条件为假之后,后面的条件就不执行了,它具有短路功能。 而& 还是要继续执行,直到整个条件语句