1. 程式人生 > 實用技巧 >java入門 (四) 流程控制(二)

java入門 (四) 流程控制(二)

java流程控制(二)

8.For迴圈詳解

9.列印九九乘法表

10.增強for迴圈

11.break和continue使用

12.列印三角形和Debug

For迴圈詳解

雖然所有迴圈都可以用while或do-while表示,但java提供了另一種語句——for迴圈,使一些迴圈結構變得更加簡單。

for迴圈語句是支援迭代的一種通用結構,是最有效,最靈活的迴圈結構。

for迴圈執行的次數是在執行前就確定的,語法結構如下

for(初始化;布林表示式;更新){
//程式碼語句
}
/*關於for迴圈有以下幾個說明:
最先執行初始化語句,可以宣告一種型別,但可初始化一個或多個迴圈控制變數,也可以是空語句。
然後檢測布林表示式的值。如果為true,迴圈體被執行,如果為false,迴圈終止,開始執行迴圈體後面的語句。
再次檢測布林表示式。迴圈執行上面的過程*/
public class ForDemo01 {
    public static void main(String[] args) {
        int a = 1;//初始化條件
        while (a<=100){//條件判斷
            System.out.println(a);//迴圈條件
            a+=2;
        }
        System.out.println("While迴圈結束!");


        //初始化//條件判斷//迭代(更新)
        for (int i=1;i<=100;i++){
            System.out.println(i);
        }
        System.out.println("For迴圈結束!");

        /*
        關於for迴圈有以下幾個說明:
        最先執行初始化語句,可以宣告一種型別,但可初始化一個或多個迴圈控制變數,也可以是空語句。
        然後檢測布林表示式的值。如果為true,迴圈體被執行,如果為false,迴圈終止,開始執行迴圈體後面的語句。
        再次檢測布林表示式。迴圈執行上面的過程
         */
        //死迴圈
        for (; ;){
            
        }
    }
public class ForDemo02 {
    public static void main(String[] args) {
        //練習題1:計算0到100之間的奇數和偶數的和
        int oddSum = 0;//奇數的和
        int evenSum = 0;//偶數的和
        for (int i = 0; i <= 100; i++) {
            if (i%2!=0){
                oddSum+=i;
            }else {
                evenSum+=i;
            }
        }

        System.out.println("奇數的和:"+oddSum);
        System.out.println("偶數的和:"+evenSum);
    }
}
public class ForDemo03 {
    public static void main(String[] args) {
        //練習題2:用while或for迴圈輸出1———1000之間能被5整除的數,並且每行輸出3個
        for (int i = 0; i <= 1000; i++) {
            if (i % 5 == 0) {
                System.out.print(i+"\t");
            }

            //每第三個數都能被15整除,所以到了能被15整除的數,就println換行!
            if (i % (5*3) == 0) {//每行
                System.out.println();
                //System.out.println("/n");
            }
        }
        //println 輸出完換行
        //print 輸出完不會換行
        
        
        int i = 0;
        while (i<1000){
            i++;
            if (i%5==0){
                System.out.print(i+"\t");
            }
            if (i%15==0){
                System.out.println();
            }
        }
    }
}

列印九九乘法表

/**
 1*1=1
 2*1=2	2*2=4
 3*1=3	3*2=6	3*3=9
 4*1=4	4*2=8	4*3=12	4*4=16
 5*1=5	5*2=10	5*3=15	5*4=20	5*5=25
 6*1=6	6*2=12	6*3=18	6*4=24	6*5=30	6*6=36
 7*1=7	7*2=14	7*3=21	7*4=28	7*5=35	7*6=42	7*7=49
 8*1=8	8*2=16	8*3=24	8*4=32	8*5=40	8*6=48	8*7=56	8*8=64
 9*1=9	9*2=18	9*3=27	9*4=36	9*5=45	9*6=54	9*7=63	9*8=72	9*9=81
 * Created by Godwin on 2020/12/24.
 */
public class ForDemo04 {
    public static void main(String[] args) {
        //列印九九乘法表      
        //1.我們先列印第一列
        //2.我們把固定的1再用一個迴圈包起來
        //3.去掉重複項,i<=j
        //4.調整樣式
        for (int j = 1; j<=9;j++){
            for (int i=1;i<=j;i++){
                System.out.print(j+"*"+i+"="+(i*j)+"\t");
            }
            System.out.println();
        }


    }
}

增強For迴圈

這裡先簡單瞭解,等之後陣列再重點使用

java5引入了一種主要用作陣列或集合的增強型for迴圈

語法:

for(宣告語句:表示式){
//程式碼句子
}

宣告語句:宣告新的區域性變數,該變數的型別必須和陣列元素的型別匹配,其作用域限定在迴圈語句塊,其值與此時陣列元素的值相等。

表示式:表示式是要訪問的陣列名,或者是返回值為陣列的方法。

public class ForDemo05 {
    public static void main(String[] args) {
        int[] numbers = {10,20,30,40,50};

        for (int i = 0; i < 5; i++) {
            System.out.println(numbers[i]);
        }

        System.out.println("==========");
        //遍歷陣列的元素
        for (int x:numbers
             ) {
            System.out.println(x);
        }
    }
}

breakhe和continue的使用

break在任何迴圈語句的主體部分,均可用break控制迴圈的流程。break用於強行退出迴圈,不執行迴圈中剩餘的語句。(break語句也在switch中使用)

continue語句在迴圈語句體中,用於終止某次迴圈過程,即跳過迴圈體中尚未執行的語句,接著進行下一次是否執行迴圈的判定。

列印三角形

這個練習題不知初學者會懵,工作了一兩年的也會懵,因為涉及到邏輯思維方面,所以敲一下,理解不了就過,不需要深究!

如果你是初學者看到了著,建議第一遍先囫圇吞棗把基礎過一遍,然後跟著demo敲,最後默寫,不要一開始一個地方不懂,非要搞懂!這樣只會耽誤時間!因為java隨便一個點,往下深挖都能禿頭!搞明白我們學習JAVA,是把它當作一個工具用來解決工作中的實際問題!而不是做研究!所以這個地方也無需要理解多透徹。把實現的程式碼放到下邊,不懂的可以去B站看下視訊

點選此處進入java流程控制12:列印三角形及DeBUG

public class Test01 {
    public static void main(String[] args) {
        //列印三角形 5行
        for (int i = 1; i <= 5; i++) {
            for (int j =5; j>=i;j--){
                System.out.print(" ");
            }
            for (int j = 1; j<=i; j++){
                System.out.print("*");
            }
            for (int j = 1; j<i;j++){
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

java複習筆記,學習視訊來自B站UP主:狂神說