国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java 的選擇語句

2019-11-18 14:38:59
字體:
來源:轉載
供稿:網友


編程語言使用控制(control )語句來產生執行流,從而完成程序狀態的改變,如程序順序執行和分支執行。java 的程序控制語句分為以下幾類:選擇,重復和跳轉。根據表達式結果或變量狀態選擇(Selection )語句來使你的程序選擇不同的執行路徑。重復(Iteration)語句使程序能夠重復執行一個或一個以上語句(也就是說,重復語句形成循環)。跳轉(Jump )語句答應你的程序以非線性的方式執行。下面將分析Java 的所有控制語句。

假如你熟悉C/C++ ,那么把握Java 的控制語句將很輕易。事實上,Java 的控制語句與C/C++ 中的語句幾乎完全相同。當然它們還是有一些差別的——尤其是break語句與continue 語句。

Java 支持兩種選擇語句:if語句和switch語句。這些語句答應你只有在程序運行時才能知道其狀態的情況下,控制程序的執行過程。假如你沒有C/C++ 的編程背景,你將會為這兩個語句的強大功能和靈活性而感到吃驚。

5.1.1 if語句
if語句曾在第2章中介紹過,我們將在這里對它進行具體討論。if語句是Java 中的條件分支語句。它能將程序的執行路徑分為兩條。if語句的完整格式如下:

if (condition) statement1;
else statement2;

其中,if和else的對象都是單個語句(statement ),也可以是程序塊。條件condition 可以是任何返回布爾值的表達式。else子句是可選的。

if語句的執行過程如下:假如條件為真,就執行if的對象(statement1 );否則,執行else 的對象(statement2 )。任何時候兩條語句都不可能同時執行。考慮下面的例子:

int a,b; // ...if(a < b) a = 0;else b = 0;

本例中,假如a小于b,那么a被賦值為0;否則,b被賦值為0。任何情況下都不可能使a 和b都被賦值為0。

通常,用于控制if語句的表達式都包含關系運算符。當然,這在技術上并不是必要的。僅用一個布爾值來控制if語句也是可以的,如下面的程序段:

boolean dataAvailable;

// ...
if (dataAvailable)
PRocessData();
else
waitForMoreData();

記住,直接跟在if 或else語句后的語句只能有一句。假如你想包含更多的語句,你需要建一個程序塊,如下面的例子:

int bytesAvailable;
// ...
if (bytesAvailable > 0) {

ProcessData();bytesAvailable -= n;} elsewaitForMoreData();

這里,假如變量bytesAvailable 大于0,則if塊內的所有語句都會執行。

一些程序員覺得在使用if語句時在其后跟一個大括號是很方便的,甚至在只有一條語句的時侯也使用大括號。這使得在日后添加別的語句變得輕易,并且你也不必擔心忘記括號。事實上,當需要定義塊時而未對其進行定義是一個導致錯誤的普遍原因。例如,考慮下面的程序段:

int bytesAvailable;
// ...
if (bytesAvailable > 0) {

ProcessData();bytesAvailable -= n;

} else
waitForMoreData();
bytesAvailable = n;

由于編排的原因,看起來似乎bytesAvailable = n 語句應該在else子句中執行。然而,當你調用時,空白對Java 無關緊要,編譯器無法知道你的意圖。這段程序會通過編譯,但運用時會出錯。上述例子應修改如下:

int bytesAvailable;
// ...
if (bytesAvailable > 0) {

ProcessData();
bytesAvailable -= n;

} else {
waitForMoreData();
bytesAvailable = n;



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江津市| 神木县| 那曲县| 华安县| 收藏| 泗阳县| 余干县| 方正县| 凯里市| 唐海县| 册亨县| 石林| 苍南县| 商河县| 松溪县| 海盐县| 石柱| 军事| 新干县| 三都| 颍上县| 靖江市| 泸定县| 邯郸市| 梅河口市| 江阴市| 秦皇岛市| 白水县| 嘉荫县| 阿尔山市| 百色市| 江孜县| 呼和浩特市| 余庆县| 岳池县| 济源市| 锦州市| 右玉县| 锦州市| 锡林浩特市| SHOW|