ava for
循环语句提供了一种强大的写循环语句的方法。
for循环的最简单形式如下所示:
for(initialization; condition; iteration)
statement;
Java for循环语句有三个部分:
- 初始化将循环控制变量设置为初始值。
condition
是测试循环控制变量的布尔表达式。 如果condition为true,for循环继续迭代。 如果condition为false,循环终止。- 迭代决定了每次循环迭代时循环控制变量的变化。
这里是一个简短的程序,说明了for循环。 i
是循环控制变量, i
被初始化为零初始化。在每次迭代的开始,条件测试 x 10
。如果该测试的结果为真,则执行 println()
语句,然后执行循环的迭代部分。此过程继续,直到条
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);
}
}
件测试为 false
。
此程序生成以下输出:
例子
下面的代码再次从上面写入代码逻辑,但是循环反转:
public class Main {
public static void main(String args[])
{
for (int n = 10; n > 0; n--)
System.out.println("n:" + n);
}
}
输出:
例2
这里是一个程序,使用 for
循环语句测试素数。
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
循环。并且可以在初始化和迭代部分中包含多个语句 for
循环。每个语句通过逗号与下一个语句分隔。这里是一个例子:
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 == 10)
done = true;
i++;
}
}
}
例5
for
循环可以嵌套生成强大的逻辑,例如,我们可以使用嵌套 for
循环来迭代一个二维数组。例如,这里是一个嵌套for循环的程序:
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();
}
}
}
此程序产生的输出如下所示:
Java for each循环
for each循环对一个序列中的元素进行迭代,而不使用循环计数器。
for each循环的的语法是:
for (type variable_name:array){
}
类型
必须与数组
类型兼容。
以下代码显示了如何为每个循环使用。
public class Main {
public static void main(String args[]) {
String[] arr = new String[]{"www.w3cschool.cn","a","b","c"};
for(String s:arr){
System.out.println(s);
}
}
}
输出:
例6
下面的代码使用 for-each
样式循环来迭代一个二维数组。
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
样式循环在搜索数组中的元素时非常有用。
上面的代码生成以下结果。