1. 程式人生 > >java基礎->循環

java基礎->循環

con div ide span 遍歷map () bsp n) do-while

while循環

    1. 格式:
    2. while(條件表達式) { // 條件表達式其實就是一個結果為boolean類型的代碼
    3. 循環體;
    4. }
    • 執行流程: 先判斷條件表達式的值, 如果為true就執行循環體,執行完循環體後會再次判斷條件表達式的值,直到條件表達式的值為false, while循環結束

do-while循環

  • 格式:
  1. do{
  2. 循環體;
  3. }while(條件表達式);
  • 執行流程: 先執行一次循環體, 再判斷條件表達式的值,如果為true就再執行循環體,直到條件表達式的值為false, do-while循環結束

for循環

格式:

  1. for(開始條件①;判斷條件②;循環的變化方式③) {
  2. 循環體④;
  3. }
  4. 執行流程: 先執行開始條件, 然後執行判斷條件, 如果為true就走循環體, 循環體執行結束後,走循環的變化方式, 再執行判斷條件, 如果為true再走循環體, 直到判斷條件的結果為false,那麽循環結束.
    註意:如果第一次執行判斷條件結果為false那麽循環直接結束,不會執行循環體
    • ① -> ② -> ④ -> ③ -> ② -> ④ -> ③ -> ② -> ④ -> ③ (直到②為false循環結束)

    註意:如果知道循環次數,使用for循環,如果不明確循環次數使用while循環

  5. // 打印1 ~ n 之間的所有整數

    // 打印1 ~ n 之間所有整數的和

    // 打印1 ~ n 之間所有奇數的和
  6. public class Print {
    
        /**
         * 此方法用於打印1 ~ n 之間的所有整數 
         * 
         * @param n  
         */
        public void print1_n(int n) {
            for(int i = 1; i <= n; i++) {
                System.out.println(i);
            }
        }
    
    
    
        /**
         * 打印1 ~ n 之間所有整數的和
         * @param n
         */
        public void printSum1_n(int
    n) { // 定義一個和 求和思想 int sum = 0; for(int i = 1; i <= n; i++) { sum += i; // sum = sum + i; } System.out.println(sum); } /** * 打印1 ~ n 之間所有奇數的和 * @param n */ public void printJiSum(int n) { int sum = 0; // 獲取1 ~ n 之間的每一個數 for(int i = 1; i <= n; i++) { // 判斷,如果是奇數就相加,偶數不管了~ if(i % 2 == 1) { sum += i; } } System.out.println(sum); } }

    增強for循環

  • 遍歷的含義: 獲取容器中的每一個元素

  • 格式:

  1. for(要遍歷的容器中元素的數據類型 變量名 : 要遍歷的容器) {
  2. 使用變量;
  3. }
  • 作用: 遍歷容器(數組或者單列集合)
  • 快捷鍵: 在要遍歷的容器的下方輸入fore 按 alt + / 回車

死循環

  1. for(;;) {
  2. }
  3. // while循環的死循環
  4. while(true) {
  5. }

break和continue

  • break: 跳出(結束)循環
  • continue: 結束本次循環,進行下一次循環

for循環嵌套

數組,ArrayList,HashMap和字符串的遍歷

  遍歷數組

public class Test1_遍歷數組 {
    public static void main(String[] args) {
        int[] arr = { 1, 2, 3, 4, 5 };

        // 普通for循環
        for(int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

        // 增強for循環
        for (int i : arr) {
            System.out.println(i);
        }
    }
}

遍歷ArrayList集合

public class Test2_遍歷單列集合 {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("張三");
        list.add("李四");
        list.add("王五");
        list.add("趙六");

        // 普通for循環
        for(int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

        // 增強for循環
        for (String string : list) {
            System.out.println(string);
        }

    }
}

遍歷Map集合

public class Test3_遍歷雙列集合 {
    public static void main(String[] args) {
        HashMap<String, Integer> map = new HashMap<>();
        map.put("張三", 23);
        map.put("李四", 24);
        map.put("趙六", 26);
        map.put("周琦", 27);

        // keySet(): 獲取到雙列集合中所有鍵的集合
        for(String key : map.keySet()) {
            System.out.println(key + "=" + map.get(key));
        }

    }
}

遍歷字符串

public class Test4_遍歷字符串 {
    public static void main(String[] args) {
        String s = "abcdefg";

        // charAt(index): 獲取指定角標位置的字符
        for(int i = 0; i < s.length(); i++) {
            System.out.println(s.charAt(i) + "");
        }

        // toCharArray() : 將字符串轉換成字符數組
        char[] chs = s.toCharArray();
        for (char c : chs) {
            System.out.println(c + "");
        }
    }
}

break 關鍵字

結束當前循環

技術分享圖片

continue關鍵字

跳過本次循環,執行下一次循環

continue 在循環中其促進作用

技術分享圖片

java基礎->循環