java if-then和if-then-else語句(翻譯自Java Tutorials)

來源:互聯網
上載者:User

原文出自 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';),然後剩餘的條件不會被計算。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.