算法(4th ed)(21):基础——基础编程模型 3.4.4

阅读数:17 2019 年 10 月 30 日 06:40

算法(4th ed)(21):基础——基础编程模型 3.4.4

(简便记法:for 语句)

很多循环的模式都是这样的:初始化一个索引变量,然后使用 while 循环并将包含索引变量的表达式作为循环的条件,while 循环的最后一条语句会将索引变量加 1。使用 Java 的 for 语句可以更紧凑地表达这种循环:

复制代码
for (<initialize>; <boolean expression>; <increment>)
{
   <block statements>
}

除了几种特殊情况之外,这段代码都等价于:

复制代码
<initialize>;
while (<boolean expression>)
{
   <block statements>
   <increment>;
}

我们将使用 for 语句来表示对这种初始化—递增循环用法的支持。

表 1.1.3 总结了各种 Java 语句及其示例与定义。

表 1.1.3 Java 语句

语句 示例 定义
声明语句
int i;
double c;
创建一个指定类型的变量并用标识符命名
赋值语句
a = b + 3;
discriminant = b * b - 4.0 * c;
将某一数据类型的值赋予一个变量
声明并初始化
int i = 1;
double c = 3.14159265;
在声明时赋予变量初始值
隐式赋值
++i;
i += 1;
i = i + 1;
条件语句(if if (x < 0) x = -x; 根据布尔表达式的值执行一条语句
条件语句(if-else
if (x > y) max = x;
else max = y;
根据布尔表达式的值执行两条语句中的一条
循环语句(while
int v = 0;
while(v <= N)
v = 2 * v;
double t = c;
while (Math.abs(t - c/t) > 1e-15*t)
t = (c/t + t) / 2.0;
执行语句,直至布尔表达式的值变为假(false
循环语句(for
for (int i = 1; i <= N; i++)
sum += 1.0/i;
for (int i = 0; i <= N; i++)
StdOut.println(2*Math.PI*i/N);
while 语句的简化版
调用语句 int key = StdIn.readInt(); 调用另一方法(请见 1.1.6.2 节)
返回语句 return false; 从方法中返回(请见 1.1.6.3 节)

评论

发布