前言
本文是橙子出于兴趣爱好对Java官方教程的尝试翻译,几乎每日更新,感兴趣的朋友可以关注一下橙子;翻译过程中尽可能多的对一些关键词保留了英文原文,如果你想看最纯正的英文原版教材却又看不懂,可以试着来看一下橙子的翻译版啊,欢迎大家留言讨论,冲鸭!
更多相关文章点击阅读
Java官方教程目录2020最新版
流程控制语句 control flow statements
源文件中的语句通常按照出现的顺序从上到下执行。然而,流程控制语句通过决策,循环和分支来改变程序执行流程,从而能够使程序有条件的执行特定的代码块。本节讲述了Java语言支持的决策语句(if-then, if-then-else, switch),循环语句(for, while, do-while)和分支语句(break, continue, return)。
The if-then and if-then-else Statements
The if-then Statement
if-then语句是最基本的流程控制语句。它告诉程序仅在特定测试结果为true的时候才执行代码的特定部分。例如,Bicycle类可以仅在自行车已经前行时才允许刹车降速。
void applyBrakes() {
// the "if" clause: bicycle must be moving
if (isMoving){
// the "then" clause: decrease current speed
currentSpeed--;
}
}
如果测试结果为false(即自行车没有前行),则程序跳转到if-then语句的末尾。另外,如果then子句仅包含一条语句,则可以省略大括号:
void applyBrakes() {
// same as above, but without braces
if (isMoving)
currentSpeed--;
}
是否省略大括号是个人喜好问题,但是省略括号不利于代码的健壮性。
The if-then-else Statement
当if子句的值为false的时候,if-then-else语句提供了第二种执行路径。比如可以当自行车不前行时踩下了刹车,可以在applyBrakes中使用if-then-else语句来采取一些措施。在这种情况下,可以简单的打印一条信息指出自行车已经停止。
void applyBrakes() {
if (isMoving) {
currentSpeed--;
} else {
System.err.println("The bicycle has already stopped!");
}
}
程序IfElseDemo根据测试分数来分配等级:A表示90%及更高,B表示80%及更高等等。
class IfElseDemo {
public static void main(String[] args) {
int testscore = 76;
char grade;
if (testscore >= 90) {
grade = 'A';
} else if (testscore >= 80) {
grade = 'B';
} else if (testscore >= 70) {
grade = 'C';
} else if (testscore >= 60) {
grade = 'D';
} else {
grade = 'F';
}
System.out.println("Grade = " + grade);
}
}
输出为:
Grade = C
testscore的值可以满足复合语句中多个表达式:76>=70和76>=60。但是,一旦满足一个条件就会执行适当的语句(grade = ‘C’😉,剩余的条件将不会被计算。
想系统学习Java的朋友关注一下橙子,相信会有意想不到的收获鸭!