分支結構和循環結構
文章目錄
一、分支結構
順序結構只能順序執行,不能進行判斷和選擇,因此需要分支結構。在Java中有以下兩種分支結構:
1.if/if…else/if…else if…else語句
2.switch…case 語句
二、if語句
語法:
if(布爾表達式)
{
//如果布爾表達式爲true將執行的語句
}
如果布爾表達式的值爲 true,則執行 if 語句中的代碼塊,否則執行 if 語句塊後面的代碼。
實例:
public class Test {
public static void main(String args[]){
int x = 10;
if( x < 20 ){
System.out.print("這是 if 語句");
}
}
}
---結果:
這是 if 語句
三、if…else語句
if 語句後面可以跟 else 語句,當 if 語句的布爾表達式值爲 false 時,else 語句塊會被執行。
語法:
if(布爾表達式){
//如果布爾表達式的值爲true
}else{
//如果布爾表達式的值爲false
}
實例:
public class Test {
public static void main(String args[]){
int x = 30;
if( x < 20 ){
System.out.print("這是 if 語句");
}else{
System.out.print("這是 else 語句");
}
}
}
---結果:
這是 else 語句
四、if…else if…else 語句
if 語句後面可以跟 else if…else 語句,這種語句可以檢測到多種可能的情況。
使用 if,else if,else 語句的時候,需要注意下面幾點:
- if 語句至多有 1 個 else 語句,else 語句在所有的 else if 語句之後。
- if 語句可以有若干個 else if 語句,它們必須在 else 語句之前。
- 一旦其中一個 else if 語句檢測爲 true,其他的 else if 以及 else 語句都將跳過執行。
語法:
if(布爾表達式 1){
//如果布爾表達式 1的值爲true執行代碼
}else if(布爾表達式 2){
//如果布爾表達式 2的值爲true執行代碼
}else if(布爾表達式 3){
//如果布爾表達式 3的值爲true執行代碼
}else {
//如果以上布爾表達式都不爲true執行代碼
}
實例:
public class Test {
public static void main(String args[]){
int x = 30;
if( x == 10 ){
System.out.print("Value of X is 10");
}else if( x == 20 ){
System.out.print("Value of X is 20");
}else if( x == 30 ){
System.out.print("Value of X is 30");
}else{
System.out.print("這是 else 語句");
}
}
}
五、嵌套的 if…else 語句
使用嵌套的 if…else 語句是合法的。也就是說你可以在另一個 if 或者 else if 語句中使用 if 或者 else if 語句。
語法:
if(布爾表達式 1){
////如果布爾表達式 1的值爲true執行代碼
if(布爾表達式 2){
////如果布爾表達式 2的值爲true執行代碼
}
}
實例:
public class Test {
public static void main(String args[]){
int x = 30;
int y = 10;
if( x == 30 ){
if( y == 10 ){
System.out.print("X = 30 and Y = 10");
}
}
}
}
---結果
X = 30 and Y = 10
六、 switch case 語句
switch case 語句判斷一個變量與一系列值中某個值是否相等,每個值稱爲一個分支。
語法:
switch(expression){
case value :
//語句
break; //可選
case value :
//語句
break; //可選
//你可以有任意數量的case語句
default : //可選
//語句
}
實例:
public class Test {
public static void main(String args[]){
//char grade = args[0].charAt(0);
char grade = 'C';
switch(grade)
{
case 'A' :
System.out.println("優秀");
break;
case 'B' :
case 'C' :
System.out.println("良好");
break;
case 'D' :
System.out.println("及格");
break;
case 'F' :
System.out.println("你需要再努力努力");
break;
default :
System.out.println("未知等級");
}
System.out.println("你的等級是 " + grade);
}
}
---結果:
良好
你的等級是 C
break
無論如何都要結束當前的全部循環,程序會繼續向下執行。
contiune
跳過本次循環繼續下一次循環。
七、循環結構
如果您想要同樣的操作執行多次,,就需要使用循環結構。
Java中有三種主要的循環結構:
- while 循環
- do…while 循環
- for 循環
八、while 循環
語法:
while( 布爾表達式 ) {
//循環內容
}
實例:
public class Test {
public static void main(String args[]) {
int x = 10;
while( x < 15 ) {
System.out.print("value of x : " + x );
x++;
System.out.print("\n");
}
}
}
---結果:
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
九、do…while 循環
對於 while 語句而言,如果不滿足條件,則不能進入循環。但有時候我們需要即使不滿足條件,也至少執行一次。
do…while 循環和 while 循環相似,不同的是,do…while 循環至少會執行一次。
語法:
do {
//代碼語句
}while(布爾表達式);
實例:
public class Test {
public static void main(String args[]){
int x = 10;
do{
System.out.print("value of x : " + x );
x++;
System.out.print("\n");
}while( x < 15 );
}
}
---結果:
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
十、for循環
雖然所有循環結構都可以用 while 或者 do…while表示,但 Java 提供了另一種語句 —— for 循環,使一些循環結構變得更加簡單。
for(初始化; 布爾表達式; 更新) {
//代碼語句
}
實例:
public class Test {
public static void main(String args[]) {
for(int x = 10; x < 15; x = x+1) {
System.out.print("value of x : " + x );
System.out.print("\n");
}
}
}
---結果
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
十一、增強 for 循環
語法:
for(聲明語句 : 表達式)
{
//代碼句子
}
實例:
public class Test {
public static void main(String args[]){
int [] numbers = {10, 20, 30, 40, 50};
for(int x : numbers ){
System.out.print( x );
System.out.print(",");
}
System.out.print("\n");
String [] names ={"James", "Larry", "Tom", "Lacy"};
for( String name : names ) {
System.out.print( name );
System.out.print(",");
}
}
}
---結果:
10,20,30,40,50,
James,Larry,Tom,Lacy,