一、 程序的結構:
一般來說程序的結構包含有下面三種:
1、順序結構
2、選擇結構
3、循環結構
二、順序結構
程序至上而下逐行執行,一條語句執行完之后繼續執行下一條語句,一直到程序的末尾
三、選擇結構
選擇結構是根據條件的成立與否,再決定要執行哪些語句的一種結構

3.1 、IF語句--單分支結構
if (判斷條件){
語句1 ;
…
語句2 ;
}

示例一、 比較2個整型變量的大小
package pb.test; public class test4 { public static void main(String[] args) { int x = 3; int y = 10; //定義2個整型變量,x,y System.out.println("=======開始比較======="); if(x>y){ System.out.println("x比y大!"); } if(x<y){ System.out.println("x小於y!"); } if(x==y){ System.out.println("x等於y!"); } System.out.println("=======比較完成======="); } }
3.2、if...else語句--雙分支結構
if (判斷條件){
語句主體1 ;
}else{
語句主體2;
}

示例二、判斷一個數字是奇數還是偶數
package pb.test; public class test5 { public static void main(String[] args) { int x=3; //定義大中型變量x if(x%2==0){ //如果余數為0則是偶數 System.out.println("x是偶數"); }else{ //如果余數不為0則是奇數 System.out.println("x是奇數"); } } }
3.3、三目運算符
使用三目運算符時,操作數有3個,其格式如下:
變量 = 條件判斷?表達式1:表達式2
根據條件的成立與否,來決定結果為“:”前或“:”后的表達式,如果條件判斷為true,則執行表達式1,為false則執行表達式2
示例三、求出2個數字中的最大值
public static void main(String[] args) { //定義變量來保存最大值 int max=0; //定義2個變量 int x=3; int y=10; //使用3目運算判斷如果x>y則,max=x,否則max=y; max=x>y?x:y; System.out.println("max為: "+max); }
3.4、if…else if…else語句 --多分支結構
如果需要在if..else里判斷多個條件時,就需要if..else if … else語句了,其格式如下:
if (條件判斷1){
語句主體1 ;
}else if (條件判斷2){
語句主體 2 ;
}
… // 多個else if()語句
else{
語句主體3 ;
}
示例四、
package pb.test; public class test6 { public static void main(String[] args) { int x=3; if(x==1){ System.out.println("x的值是1!"); }else if(x==2){ System.out.println("x的值是2!"); }else if(x==3){ System.out.println("x的值是3!"); }else{ System.out.println("x的值不是1,2,3 中的一個!"); } } }
四、Switch結構
要在許多的選擇條件中找到並執行其中一個符合判斷條件的語句時,除了可以使用if..else不斷地判斷之外,也可以使用另一種更方便的方式即多重選擇——switch語句,語法格式:
switch (表達式){
case 選擇值1 : 語句主體 1 ; break ;
case 選擇值2 : 語句主體 2 ; break ;
…….
case 選擇值n : 語句主體 n ; break ; default: 語句主體 ;
}
4.1、執行流程
示例五、判斷學生成績,並給於評分,90~100分,A級大於80分,B級,大於70分,輸出C級,大於60分,D級,低於60分輸出E級
package pb.test; public class test7 { public static void main(String[] args) { int score = 75; //聲明學生分數 switch (score/10){ case 10: case 9: System.out.println("A級"); break; case 8: System.out.println("B級"); break; case 7: System.out.println("C級"); break; case 6: System.out.println("D級"); break; default: System.out.println("E級"); break; } } }
結果:C級
還是上面的如果不加break;
package pb.test; public class test7 { public static void main(String[] args) { int score = 75; //聲明學生分數 switch (score/10){ case 10: case 9: System.out.println("A級"); case 8: System.out.println("B級"); case 7: System.out.println("C級"); case 6: System.out.println("D級"); default: System.out.println("E級"); } } }
結果:C級,D級,E級