Java For語句

2022-09-07 14:03 更新

Java教程 - Java For語句


Java for 循環(huán)語句提供了一種強大的寫循環(huán)語句的方法。

for循環(huán)的最簡單形式如下所示:

  for(initialization; condition; iteration) 
    statement; 

Java for循環(huán)語句有三個部分:

  • 初始化將循環(huán)控制變量設(shè)置為初始值。
  • condition 是測試循環(huán)控制變量的布爾表達(dá)式。 如果condition為true,for循環(huán)繼續(xù)迭代。 如果condition為false,循環(huán)終止。
  • 迭代決定了每次循環(huán)迭代時循環(huán)控制變量的變化。

這里是一個簡短的程序,說明了for循環(huán)。 i 是循環(huán)控制變量, i 被初始化為零初始化。在每次迭代的開始,條件測試 x 10 。如果該測試的結(jié)果為真,則執(zhí)行 println()語句,然后執(zhí)行循環(huán)的迭代部分。此過程繼續(xù),直到條件測試為 false 。

public class Main {
  public static void main(String args[]) {
    int i;

    for (i = 0; i < 10; i = i + 1)
      System.out.println("This is i: " + i);
  }
}

此程序生成以下輸出:

例子

下面的代碼再次從上面寫入代碼邏輯,但是循環(huán)反轉(zhuǎn):

 
public class Main {
  public static void main(String args[]) {
    for (int n = 10; n > 0; n--)
      System.out.println("n:" + n);
  }
}  ]]>

輸出:

例2

這里是一個程序,使用 for 循環(huán)語句測試素數(shù)。

 
public class Main {
  public static void main(String args[]) {
    int num;
    boolean isPrime = true;
    num = 50;
    for (int i = 2; i <= num / 2; i++) {
      if ((num % i) == 0) {
        isPrime = false;
        break;
      }
    }
    if (isPrime)
      System.out.println("Prime");
    else
      System.out.println("Not Prime");

  }
}

輸出:


例3

Java允許兩個或多個變量控制 for 循環(huán)。并且可以在初始化和迭代部分中包含多個語句 for 循環(huán)。每個語句通過逗號與下一個語句分隔。這里是一個例子:

 
public class Main {
  public static void main(String args[]) {

    for (int a = 1, b = 4; a < b; a++, b--) {
      System.out.println("a = " + a);
      System.out.println("b = " + b);

    }
  }
}

程序生成以下輸出:

例4

for 的三個部分可用于任何目的和部分 for loop可以為空。

 
public class Main {
  public static void main(String args[]) {
    int i = 0;
    boolean done = false;
    for (; !done;) {
      System.out.println("i is " + i);
      if (i == 9)
        done = true;
      i++;

    }
  }
}

輸出:

例5

for 循環(huán)可以嵌套生成強大的邏輯,例如,我們可以使用嵌套 for 循環(huán)來迭代一個二維數(shù)組。例如,這里是一個嵌套for循環(huán)的程序:

 
public class Main {
  public static void main(String args[]) {
    for (int i = 0; i < 10; i++) {
      for (int j = i; j < 10; j++)
        System.out.print(".");
      System.out.println();
    }
  }
}

此程序產(chǎn)生的輸出如下所示:

Java for each循環(huán)

for each循環(huán)對一個序列中的元素進(jìn)行迭代,而不使用循環(huán)計數(shù)器。

for each循環(huán)的的語法是:

for (type variable_name:array){
       
}

類型必須與數(shù)組類型兼容。

以下代碼顯示了如何為每個循環(huán)使用。

public class Main {
  public static void main(String args[]) {
    String[] arr = new String[]{"m.hgci.cn","a","b","c"};
    for(String s:arr){
      System.out.println(s);
    }
  }
}

輸出:

Java for each循環(huán)輸出

例6

下面的代碼使用 for-each 樣式循環(huán)來迭代一個二維數(shù)組。

public class Main {
  public static void main(String args[]) {
    int sum = 0;
    int nums[][] = new int[3][5];
    for (int i = 0; i < 3; i++){
      for (int j = 0; j < 5; j++){
        nums[i][j] = (i + 1) * (j + 1);
      }  
    }
    // use for-each for to display and sum the values
    for (int x[] : nums) {
      for (int y : x) {
        System.out.println("Value is: " + y);
        sum += y;
      }
    }
    System.out.println("Summation: " + sum);
  }
}

此程序的輸出如下所示:


例7

for-each 樣式循環(huán)在搜索數(shù)組中的元素時非常有用。

public class Main {
  public static void main(String args[]) {
    int nums[] = { 6, 8, 3, 7, 5, 6, 1, 4 };
    int val = 5;
    boolean found = false;
    // use for-each style for to search nums for val
    for (int x : nums) {
      if (x == val) {
        found = true;
        break;
      }
    }
    if (found)
      System.out.println("Value found!");
  }
}

上面的代碼生成以下結(jié)果。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號