循环内的switch中break和continue使用区别

  首先看下break和continue的使用方法。

break语句在循环和switch语句中使用,用于终止最近的封闭代码块,如果在嵌套循环中,则只终止最近的循环。

continue语句在循环中使用,不能单独在switch中使用,可以在循环内的switch中使用,用于跳过当次循环,直接进入下一次循环。

 

  再看下两者在循环内的switch中使用的区别。

1、看一个循环内的switch中使用break的例子:

 1     public static void testBreakAndContinue() {
 2         List<String> fruit = new ArrayList<>(Arrays.asList("apple", "banana", "orange", "pear"));
 3         for (int i = 0; i < fruit.size(); i++) {
 4             switch (fruit.get(i)) {
 5             case "orange":
 6 //                continue;
 7                 break;
 8             }
 9             System.out.println("we have " + fruit.get(i));
10         }
11     }

  输出结果为:

  可以看出,这里break只终止了最近的switch,并没有终止for循环。

 

 2、再看一个循环内的switch中使用continue的例子:

 1     public static void testBreakAndContinue() {
 2         List<String> fruit = new ArrayList<>(Arrays.asList("apple", "banana", "orange", "pear"));
 3         for (int i = 0; i < fruit.size(); i++) {
 4             switch (fruit.get(i)) {
 5             case "orange":
 6                 continue;
 7 //                break;
 8             }
 9             System.out.println("we have " + fruit.get(i));
10         }
11     }

  输出结果为:

  可以看出,continue不止跳出了switch,还跳过了orange的这一次for循环,没有输出。

 

posted @ 2018-10-31 15:45  PC君  阅读(34226)  评论(2编辑  收藏  举报