先引用老外的一句话:“Like a sentient creature,a  program must manipulate(巧妙的控制) its world  and make choices during execution.In Java you make choices with execution control statements.”

   Java使用C中的所有控制语句,许多过程编程语言有一些控制语句,各语言之间的控制语句又有一定的区别。在Java控制语句主要包括 if-else、while、do-while、for、return、break、switch(选择语句),Java中不支持 goto 语句,尽管有的时候可以它可以很好的进行结构流程控制。

  • true and false

   true/false 通常用做if、while语句的判断条件,由一个表达式来产生truefalse值,以此来决定执行的路径。注意在Java中不允许把一个数字当做boolean型来使用(在C and C++允许这样做,true表示非“0”值,false表示是“0”)。

  • if-else

   if-else是最基本的控制语句,表达式中的else是可选的。主要有以下两种形式:

if(Boolean-expression)
    statement

  或者是

if(Boolean-expression)
    statement
else
    statement

   条件判断表达式Boolean-expression必须产生一个Boolean型的结果,statement可以是简单的语句,也可以是由简单语句组成的代码块。下面是一个if-else的简单的例子。

  • 1-1 if-else简单的例子

//: control/IfElse.java
import static net.mindview.util.Print.*;
public class IfElse {
  static int result = 0;
  static void test(int testval, int target) {
    if(testval > target)
      result = +1;
    else if(testval < target)
      result = -1;
    else
      result = 0; // Match
  }
  public static void main(String[] args) {
    test(10, 5);
    print(result);
    test(5, 10);
    print(result);
    test(5, 5);
    print(result);
  }
}

程序运行的部分截图结果如下:

[Thinking in java ]之控制执行(Controlling Execution)(一)_控制语句

   代码

1
importstaticnet.mindview.util.Print.*;

已经在前面的文章中说明,可以参看[Thinking In Java]代码整理之移位操作符(shift operators)

  • Iteration(循环)

   Java中的循环控制主要有while、do-while、for,statement重复执行,直到条件判断语句Boolean-expression为false。

   while循环的格式如下:

while(Boolean-expression)
    statement

   Boolean-expression在循环刚开始时先进行判断,以后在每次循环之前先对其进行判断,若为false,则结束循环。

  • 1-2 while循环的例子

//: control/WhileTest.java
// Demonstrates the while loop.
public class WhileTest {
  static boolean condition() {
    boolean result = Math.random() < 0.99;
    System.out.print(result + ", ");
    return result;
  }
  public static void main(String[] args) {
    while(condition())
      System.out.println("Inside 'while'");
    System.out.println("Exited 'while'");
  }
}

程序运行的结果如下

[Thinking in java ]之控制执行(Controlling Execution)(一)_控制语句_02

[Thinking in java ]之控制执行(Controlling Execution)(一)_java_03

  • do-while

   do-while控制语句的形式如下:

do
    statement
while(Boolean-expression);

注意:

  1. do-while语句至少执行一次,而不管Boolean是否为true。

  2. 在while循环中,如果Boolean为false,那么循环就不会执行。

  3. 在实际使用中while比do-while更常见。

  • for

   for循环式最常见的循环,也是使用最多的循环控制语句,for相对变量初始化,然后是条件判断,最后是修改变量的值。for语句的格式如下:

for(initialization;Boolean-expression;step)
    statement

for循环语句中的initialization、Boolean-expression、step都可以为空。for循环一般用作计数(counting)中或是已明确循环的次数程序中。下面是一个简单的例子。

  • 1-3 for循环的例子。

//: control/ListCharacters.java
// Demonstrates "for" loop by listing
// all the lowercase ASCII letters.
public class ListCharacters {
  public static void main(String[] args) {
    for(char c = 0; c < 128; c++)
      if(Character.isLowerCase(c))
        System.out.println("value: " + (int)c +
          " character: " + c);
  }
}

程序运行的部分截图如下

[Thinking in java ]之控制执行(Controlling Execution)(一)_控制语句_04

文章的代码摘自 Thinking in Java(Fourth Edition)英文版,作者 [美]Bruce Eckef,刘中兵 评注。