1、块作用域
- 块(即复合语句)是指由一对大括号括起来的若干条简单的 Java 语句。
- 块确定了变量的作用域。
- 一个块可以嵌套在另一个块中。不能在嵌套的两个块中声明同名的变量。
2、条件语句
- 条件语句格式:
if (condition) statement
- Java 常常希望在某个条件为真时执行多条语句。在这种情况下, 应该使用块语句 (block statement), 形 式 为
{
statement~1~
statement~2~
}
- 一般的条件语句格式如下所示 :
if (condition) statement1 else statement2
3、循环
- 当条件为 true 时,while 循环执行一条语句(也可以是一个语句块)。一般格式为
while { condition ) statement
,如果开始循环条件的值就为 false, 则 while 循环体一次也不执行; - 用 do/while 循环语句语法格式为:
do statement while { condition);
先执行语句 (通常是一个语句块,) 再检测循环条件;然后重复语句再检测循环条件, 以此类推。至少执行一次。
4、确定循环
for 循环语句是支持迭代的一种通用结构, 利用每次迭代之后更新的计数器或类似的变量来控制迭代次数。
注意:如果在 for 语句内部定义一个变量, 这个变量就不能在循环体之外使用
5、多重选择:switch语句
switch语句将从与选项值相匹配的 case 标签处开始执行直到遇到 break 语句,或者执行到switch 语句的结束处为止。如果没有相匹配的 case 标签, 而有 default 子句, 就执行这个子句。
switch (choice) {
case 1:
……
break;
case 2:
……
break;
case 3:
……
break;
case 4:
……
break;
default: // bad input
……
break;
}
- case 标签可以是: 1)类型为 char、byte、 short 或 int 的常量表达式。 2)枚举常量,可以用表达式。3)从 Java SE 7开始, case 标签还可以是字符串字面量。
6、中断控制流程语句
- break;
- 带标签的break:可以跳出多重嵌套的循环语句(标签必须放在跳出的最外层循环之前,并且紧跟一个冒号)
read_data:
while (. . .) // this loop statement is tagged with the label
for (. . .) // this inner loop is not labeled
{
Systen.out.print("Enter a number >= 0: "); n = in.nextlntO;
if (n < 0) // should never happen-can’t go on
break read.data; // break out of readjata loop
}
}