zoukankan      html  css  js  c++  java
  • java ifthen和ifthenelse语句(翻译自Java Tutorials)

    原文出自 http://www.cnblogs.com/ggjucheng/archive/2012/12/16/2820834.html

    英文出自 http://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html

    if-then语句

    if-then语句是控制流语句,最基本的语句。它告诉程序,只有当测试计算返回true,才执行特定代码。例如,Bicycle 类只允许在bicycle运动时,才可以使用刹车减速。applyBrakes 方法的一个可能的实现如下:

    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--;
    }

    决定何时省略大括号是一种个人品味的问题。忽略大括号,可能会造成代码的脆弱。如果第二个语句要添加到"then"字句,一个常见的错误会忘添加需要的新大括号。编译器无法捕捉这种情况的错误,程序将会出现错误的结果。

    if-then-else语句

    当"if" 字句计算为false,if-then-else语句提供程序执行的第二个路径。可以在applyBrakes方法中,使用if-then-else语句,当bicycle没有运动,请求刹车减速,执行一些行为。这个情况下,这个行为简单的输出一个错误信息说,bicycle已经停止了。

    void applyBrakes() {
        if (isMoving) {
            currentSpeed--;
        } else {
            System.err.println("The bicycle has " + "already stopped!");
        } 
    }

    下面的程序,IfElseDemo,根据测试的score的值,分配一个级别:分数90%以上为A,80%以上为B,依此类推。

    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';),然后剩余的条件不会被计算。

  • 相关阅读:
    以太坊设计原理
    Merkle Patricia Tree 详解
    Verifiable random function
    压缩工具gzip、bzip2、xz的使用
    压缩工具gzip、bzip2、xz的使用
    Jni中图片传递的3种方式(转)
    Jni中图片传递的3种方式(转)
    短视频sdk:选择一个靠谱的短视频SDK 你需要了解这些
    短视频sdk:选择一个靠谱的短视频SDK 你需要了解这些
    短视频sdk:选择一个靠谱的短视频SDK 你需要了解这些
  • 原文地址:https://www.cnblogs.com/ggjucheng/p/2820834.html
Copyright © 2011-2022 走看看