Java基礎4:程序結構以及注意事項

1. 順序結構:

按照代碼的順序從上往下依次執行。

2. 選擇結構(分支結構):有兩種實現方式

if…else語句

public static void main(String[] args) {

   intsalary =5000;

   if (salary < 1000) {

       System.out.println("屬於低薪階層");

   }else if(salary <3000) {

       System.out.println("不錯了有錢了");

   }else{

       System.out.println("哎呦,高薪哦");

   }

}

運行結果:

哎呦,高薪哦

switch語句(開關語句)

public static void main(String[] args) {

   intcount =2;

   switch (count) {

       case1:

            System.out.println("數量爲1");

       case 2:

            System.out.println("數量爲2");

       case 3:

            System.out.println("數量爲3");

       default:

            System.out.println("數量不清楚哦");

   }

}

運行結果:

數量爲2 

數量爲3  

數量不清楚哦

結果分析:

case語句中不加break的話 , 在第一個case匹配之後 ,下面的case就不進行判斷操作了 ,直接執行case內部的語句。

正確代碼如下:

public static void main(String[] args) {

   intcount =2;

   switch (count) {

       case1:

            System.out.println("數量爲1");

            break;

       case 2:

            System.out.println("數量爲2");

            break;

       case 3:

            System.out.println("數量爲3");

            break;

       default:

           System.out.println("數量不清楚哦");

            break;

   }

}

運行結果:

數量爲2

注意事項: 

switch的取值範圍byte、char、short、int、String還有枚舉類型,long類型是不能作用在switch語句上的。

3. 循環結構: 有兩種實現方式

- for…語句循環

for (inti =0;i <3;i++) {

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

}

運行結果 :

i = 0

i = 1

i = 2

for循環執行順序:

- 第一次循環執行初始化int i = 0, 然後執行判斷i < 3, 如果結果爲true, 執行循環體

- 接下來的循環, 先執行判斷, 如果結果爲true, 再執行循環體

- 直到不再滿足i < 3 這個條件, 就跳出循環


- while…語句循環

public static void main(String[] args) {

    intsum =0,i =1;

   while (i <= 100) {

       sum += i++;

    }

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

}

運行結果:

sum = 5050

 

public static void main(String[] args) {

    intsum =0,i =101;

   do {

       sum += i++;

    }while(i <=100);

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

}

運行結果:

sum = 101

結果分析:

do…while循環的過程中 , 先執行do語句 , 再執行while判斷 , 而while…語句是先執行判斷 ,再執行循環體。

- continue,break循環控制

public static void main(String[] args) {

    for(inti =0;i <4;i++) {

       if((i &1) ==0) {

           System.out.println(i +"爲偶數 ,不打印");

           continue;

       }

       System.out.println("打印"+ i);

    }

}

執行結果:

0 爲偶數 ,不打印

打印1

2 爲偶數 ,不打印

打印3

結果分析:

continue是結束當前這次循環 , 繼續進行下次循環

 

public static void main(String[] args) {

    inti =0;

    flag:

    for(;i <10;) {

       if(i <5) {

           System.out.println(i +" <5 ,不打印");

           i +=4;

           continue flag;

       }

        System.out.println("打印"+ i);

       i +=3;

    }

}

運行結果:

0 <5 , 不打印

4 <5 , 不打印

打印8

結果分析:

continue指定跳轉的標籤 , 可以跳出循環的外層 , 如果循環嵌套 , 可以跳出到指定層數

for語句的特殊寫法 , 可以這樣處理特殊業務邏輯 , 但是這種時候最好選擇while語句

 

public static void main(String[] args) {

    inti =0;

    while (i < 10) {

       if(i <5) {

           System.out.println(i +" <5 ,不打印");

           i +=4;

       }

       if(i ==4) {

           System.out.println("i == 4 ,跳出整個循環");

           break;

       }

       System.out.println("打印"+ i);

       i +=3;

    }

}

運行結果:

0 <5 , 不打印

i == 4 , 跳出整個循環

運行結果分析:

break的作用是結束整個循環 , 同時break和continue一樣 , 可以跳轉到指定標籤的位置

 

- 注意事項

for…語句和while…語句的選擇 , 當知道循環次數的時候用for語句, 不知道循環次數 , 但知道循環判斷條件的時候 , 選擇while語句。

continue和break實現了goto的功能,但我們儘量不要使用

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章