《Java 编程思想》第四章-控制执行流程,阅读笔记。
逗号操作符
第一次在 Java 中听说这个概念,是逗号操作符,不是逗号分隔符(就是用在分隔函数的不同参数啦)。
Java 里唯一使用逗号操作符的地方就是 for 循环中的初始化部分(通过使用逗号操作符可以直接定义多个相同类型的变量,不能定义多个类型不同的变量)和步进控制部分。
臭名昭著的goto
要记住重点:在 Java 里需要使用标签的唯一理由就是因为有循环嵌套存在,而且想从多层嵌套中 break 或 continue。
没想到 Java 中还有这种古老的大杀器,不过应该很好有人用了吧?不用的理由应该有二:
- 出于对印象中 goto 的畏惧
- 并不知道 Java 中还留着这语法
下面示例程序纪念一波:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| package control; * Created by clearbug on 2017/3/14. */ public class LabeledFor { public static void main(String[] args) { int i = 0; outer: for (; true ;) { inner: for (; i < 10; i++) { System.out.println("i = " + i); if (i == 2) { System.out.println("continue"); } if (i == 3) { System.out.println("break"); i++; break; } if (i == 7) { System.out.println("continue outer"); i++; continue outer; } if (i == 8) { System.out.println("break outer"); break outer; } for (int j = 0; j < 5; j++) { if (j == 3) { System.out.println("continue inner"); continue inner; } } } } } }
|