2010年6月22日 星期二

Java 基本流程控制 - Switch 敘述 #4



有的時後程式需要配合變數的值來決定需要執行何種處理程序,若我們利用if 條件控制來做的話,程式將會變的相當混亂,像這類的情況,switch 條件控制就派上用場了,它可以讓我們的程式看起來更加的精簡有結構,switch 的結構語法如下:


switch(狀況){
case 狀況1:
處理程序1;
break;
case 狀況2:
處理程序2;
break;
default:
預設的處理程序;
}


在使用switch 流程控制時,我們必須先將不同狀況所需進行的處理程序撰寫完畢,接著當有狀況輸入至switch 時,switch 便會比對該狀況是對應於那一個處理程序,若輸入的狀況剛好與我們先前制定的狀況都不同時,switch 將會跳至default:執行預設的處理程序。以下為一個簡單的信件分類程式,該程式會依照信件的郵遞區號自動判斷出該信件是屬於那個地區,若輸入的郵遞區號無法判斷時,就會歸類到未知信件區。


public class Switch {

public static void main(String args[]){

int letter=241;//準備進行分類的信件郵遞區號

switch(letter){

case 241://如果郵遞區號為241

System.out.println("你的信件屬於三重區");

break;//離開switch

case 111://如果郵遞區號為111

System.out.println("你的信件屬於士林區");

break;//離開switch

case 116://如果郵遞區號為116

System.out.println("你的信件屬於文山區");

break;//離開switch

default://如都找不到分類

System.out.println("你的信件屬於未分類區");

break;//離開switch

}

}

}






Java 基本流程控制 - while 與do while 敘述 #3



while 迴圈控制可以看作為精簡版的for 迴圈控制,它扣除了for 迴圈的初始化參數與設定變數條件的動作,while 迴圈的結構語法如下:


while(條件){
處理程序
}


在while 中只要條件成立,就會一直執行處理程序,直到while 條件不成立為止才會離開while 迴圈,讓我們直接利用範例程式來說明:


public class While {

public static void main(String args[]){

int a=0;

while(a<5){//a小於5則繼續執行

System.out.println("a="+a);//印出a的值

a++;//a值加一

}

System.out.println("a的值己大於或等於5,離開while迴圈");

}

}



在此範例程式中,只要a 的值小於5,while 迴圈的條件就會成立,接著將會把a 的值印出來後在將a 的值加一,這個動作將會一直重復執行直到a 的值等於5為止,while 條件式便不成立,因此程式將會離開while 迴圈控制。
而另一種do while 迴圈控制,則與while 相當類似,唯一不同的地方式,while 是先進行判斷在執行處理程序,do while 則是先執行處理程序後在進行條件判斷,do while 迴圈的結果語法如下:


do{
處理程序
}while(條件);


因此不管條件是否成立,處理程序至少會被執行一次,接著在判斷條件是否成立,若為flase(假)則離開do while 迴圈控制。讓我們直接利用程式範例來說明:


public class DoWhile {

public static void main(String args[]){

int a=10;//宣告a變數為int型態,值為10

do{//進行do while迴圈控制

//印出Hello字串

System.out.println("Hello!");

}while(a<5);//a<5則離開do while迴圈

}

//執行結果: Hello!

}



在此範例中,雖然a 的值大於5,但是由於do while 迴圈控制是先執行處理程序再進行條件判斷,所以會先印出Hello!字串於螢幕上,接著在進行判斷a 的值是否大於5,若為真,則離開do while 迴圈。


2010年6月21日 星期一

Java 基本流程控制 - For 敘述 #2



for 迴圈重復性的執行我們所設計的程序,直到滿足了我們所給定義的條件後才會停止,for迴圈的語法結構如下:

for(初始化的參數;條件句;動作){
處理程序




for 迴圈一開始會先執行初始化參數,隨後進行條件句判斷,若條件句成立,則進行行處理程序,接著在執行動作,動作執行完畢後在重新判斷條件句是否成立,若成立在繼續執行處理程序,如此不斷的循環執行下去,直至條件句不成立為止才會離開for 迴圈。讓我們直接利用範例程式來說明:


public class For {

public static void main(String args[]){

for(int i=0;i<5;i++){

System.out.println("i="+i);

}

}

}



【執行結果】: