Web | Coding | Blog | SOHO

[Java]第五章:選擇性敘述與迴圈( Part I )

迴圈可以重複執行相同程式的片段,還可以讓程式結構化。
這章學習如何利用不同的結構,撰寫更靈活,操作更方便。

參考書籍:Java 7 教學手冊


程式的結構

  • 循序性結構(sequence structure):由上至下 (top to down)的敘述方式。
  • 選擇性結構(selection structure):先判斷條件是否成立,再決定執行哪些敘述。
  • 重複性結構(iteration structure):判斷條件是否成立,並決定程式段落的執行次數。

三者的共通點為:只有一個進入點,也只有一個出口。

選擇性結構包括 if、if-else、switch

if 敘述:如果主體中只有一個敘述,則可以省略左右大括號。

當條件成立(true),就會逐一執行大括號內的敘述。以下為格式

 if(判斷條件)
{
     敘述主體;
}

ch05-1


if -else 敘述:

當條件成立(true),就會執行敘述主體;不成立時,則執行else 的敘述主體。以下為格式

 if(判斷條件)
{
     敘述主體A;
}
else
{
     敘述主體B;
}

ch05-2

以下範例:

public class ch05_1 {

	public static void main(String[] args) {
		int a=10;

		if (a%2==0)  // 如果可被2整除,判斷奇偶數
			System.out.println(a+" 為偶數");
		else
			System.out.println(a+" 為奇數");

	}

OUTPUT:

10 為偶數


巢狀 if 敘述:

if 敘述中又包含其它 if 敘述。以下為格式

if(判斷條件1)
{
  if(判斷條件2)
  {
     敘述主體;
  }
  ...
  其它敘述;
}

當判斷條件1為真,就會執行他敘述中的 判斷條件2;
若判斷條件2也為真時,就會執行判斷條件2 的敘述主體。

ch05-3

以下範例使用if -else 敘述做延伸

public class ch05_2 {

	public static void main(String[] args) {
		int a=10;
		if(a>0)
		{
			if (a%2==0)  // 如果可被2整除,判斷奇偶數
				System.out.println(a+" 為大於0的偶數");
			else
				System.out.println(a+" 為大於0的奇數");
		}
	}

OUTPUT:
10 為大於0的偶數

過多的巢狀 if 反而會造成邏輯判斷的混淆,拖累執行的速度


熟悉以上三種選擇性敘述後,在此補充還有一種運算子可以代替if-else敘述,稱為條件運算子。

整數 = 判斷條件 ? 運算式1 : 運算式2

以下範例:

public class ch05_3 {

	public static void main(String[] args) {
		int a=19,b=10,max;

		max=(a>b)?a:b;  // 當a>b時,max=a,否則 max=b

		System.out.println("a= "+a+", b= "+b);
		System.out.println(max+"為最大的數");

	}

OUTPUT:
a= 19, b= 10
19為最大的數

會發現使用條件運算子可以使程式碼較簡潔,執行速度也較有效率。


在Part II 會介紹迴圈

點此繼續閱讀 Part II

Java 學習日誌 (點此閱讀所有 Java日誌)
有任何問題也歡迎在底下留言,或到fb粉絲專頁發訊息給站長一起討論。


如果您喜歡本站的文章,也歡迎將文章分享轉貼並註明出處;
另外還未按讚粉絲專頁的朋友,也可以動動手點擊追蹤最新的文章唷:

Comments

comments

如果您喜歡本站的文章,也歡迎將文章分享轉貼並註明出處;另外還未按讚粉絲專頁的朋友,也可以動動手點擊追蹤最新的文章唷:


© 2017 4xCode™ | Design:SC 站長

歡迎來到SC站長網站

 

本站文章不再更新,新文章將發表至

4 x ‘s Space 網站

 

謝謝您一直以來的支持,我們新網站見~

 

SC站長網站文章也會將慢慢轉移至新網站,

新網站連結 4-x.tw 點此前往,或點擊上方圖案)