控制流程
个人认为编程语言最伟大的语句是: goto
- Java 使用条件语句和循环语句控制流程。
1、块的概念
- 块即复合语句,由一对花括号括起来,确定了变量的作用域。
- 在 C++ 中,可以在嵌套的块中重定义一个变量,在内层定义的变量会覆盖外层的,但是在 Java 中不允许这么做。
2、条件语句
- 使用块可以在 Java 中原本只能放置一条语句的地方放置多条语句。
- else 部分是可选的。
3、循环
- 现在还没什么好说的,等待之后的版本深入了解
4、switch
- Java 有一个和 C/C++ 完全一样的 switch 语句
switch (choice) {
case 1:
//情况写在冒号 ":" 前面
do something;
break;
case 2:
do something;
break;
default:
break;
}
- switch 从与选项值相匹配的 case 标签开始执行直到遇到 break 语句,或者执行到 switch 语句的结束处为止。如果没有相匹配的 case 标签,而有 default 语句,就执行这个子句。
- 如果不用 break ,可能会造成 case 渗透,是很严重的问题。
- 从 Java SE 7 开始, case 标签支持字符串:
String choice = "live";
switch (choice) {
case "live":
System.out.println("I'm back !");
break;
case "dead":
System.out.println("Don't forget me !");
break;
default:
break;
}//输出 I'm back !
5、中断控制语句
- break 和 continue。
- 对于任何使用 break 语句的代码都需要检测循环是正常结束,还是又break跳出。
- Java 设计者同意偶尔使用 goto 跳出循环是有益处的,增加了一条带标签的 break 和 continue,以此来支持这种程序设计风格。
public class BreakTest {
public static void main(String[] args) {
flag:
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 3; j++) {
if (j == 2) {
break flag;
}
System.out.print(i + " " + j + "|");
}
}
System.out.println("done");
}
}
//输出 0 0|0 1|done