重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
for(初始操作;循环条件;每次迭代后的操作){ 循环体;}do{ 循环体}while(循环条件);while(循环条件){ 循环体;}for-each循环for(数据类型:数组名){循环体;}
创新互联专业为企业提供蕉城网站建设、蕉城做网站、蕉城网站设计、蕉城网站制作等企业网站建设、网页设计与制作、蕉城企业网站模板建站服务,十余年蕉城做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
Java中有三种主要的循环结构:
1、while 循环
while是最基本的循环,它的结构为:
while( 布尔表达式 ) {
//循环内容}
只要布尔表达式为 true,循环就会一直执行下去。
2、do…while 循环
对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。
do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。
do {
//代码语句
}while(布尔表达式)
注意:布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为 true,则语句块一直执行,直到布尔表达式的值为 false。
3、for循环
虽然所有循环结构都可以用 while 或者 do...while表示,但 Java 提供了另一种语句 —— for 循环,使一些循环结构变得更加简单。
for循环执行的次数是在执行前就确定的。语法格式如下:
for(初始化; 布尔表达式; 更新) {
//代码语句}
关于 for 循环有以下几点说明:
最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
然后,检测布尔表达式的值。如果为 true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
执行一次循环后,更新循环控制变量。
再次检测布尔表达式。循环执行上面的过程。
Java 增强 for 循环
Java5 引入了一种主要用于数组的增强型 for 循环。
Java 增强 for 循环语法格式如下:
for(声明语句 : 表达式){
//代码句子}
声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限在循环语句块,其值与此时数组元素的值相等。
表达式:表达式是要访问的数组名,或者是返回值为数组的方法。
有两种方法:
1. 使用三层循环遍历多维数组
public class Ransack {
public static void main(String[] args) {
int array[][][] = new int[][][]{ // 创建并初始化数组
{ { 1, 2, 3 }, { 4, 5, 6 } },
{ { 7, 8, 9 }, { 10, 11, 12 } },
{ { 13, 14, 15 }, { 16, 17, 18 } }
};
array[1][0][0] = 97; // 改变指定数组元素
for (int i = 0; i array.length; i++) { // 遍历数组
for (int j = 0; j array[0].length; j++) {
for (int k = 0; k array[0][0].length; k++) {
System.out.print(array[i][j][k] + "\t");
}
System.out.println(); // 输出一维数组后换行
}
}
}
2.使用foreach 遍历三维数组
public class ForEachRansack {
public static void main(String[] args) {
int array[][][] = new int[][][]{ // 创建并初始化数组
{ { 1, 2, 3 }, { 4, 5, 6 } },
{ { 7, 8, 9 }, { 10, 11, 12 } },
{ { 13, 14, 15 }, { 16, 17, 18 } }
};
for (int[][] is : array) { // 遍历数组
for (int[] is2 : is) {
for (int i : is2) {
System.out.print(i + "\t");
}
System.out.println(); // 输出一维数组后换行
}
}
}
}
public class ArrayTest {
public static void main(String[] args){
int []ages=new int[6];
String [] names=new String[6];
int sumAge=0;//所有年龄总和
//随机年龄赋值
for(int i=0;iages.length;i++){
ages[i]=(int) (Math.random()*20)+10;
sumAge+=ages[i];
}
//姓名添加
for(int i=0;inames.length;i++){
names[i]="李明"+i;
}
int index=0;//输出每位同学的姓名和年龄 下标
while(indexages.length){
System.out.println("姓名:"+names[index]+" 年龄:"+ages[index]);
index++;
}
int averageAge=sumAge/6;
System.out.println("平均年龄为"+averageAge +" 大于平均年龄的同学有:");
for(int i=0;iages.length;i++){
if(ages[i]averageAge){
System.out.println("姓名:"+names[i]+" 年龄:"+ages[i]);
}
}
}
}