Java有三种循环结构:
1.while 循环
while循环的基本表达方式:
while(布尔表达式){
//循环内容
}
只要布尔表达式==True,循环就会一直执行
e.g1:
class TestLoop{
public static void main(String args[]){
int i = 10;
while(i < 20){
System.out.print("value of x:" + i);
i++;
System.out.print("\n");
}
}
}
/*
输出结果:
value of x:10
value of x:11
value of x:12
value of x:13
value of x:14
value of x:15
value of x:16
value of x:17
value of x:18
value of x:19
*/
2.do...while 循环
while循环,若不满足条件则不能循环;有时我们需要不满足条件,也至少执行一次
do...while 循环和while很相似,但do...while 循环至少会执行一次
do...while 循环的表达方式:
do{
//循环内容
}while(布尔表达式);
备注:
布尔表达式在循环体的后面,所以在检测布尔表达式之前已经执行一次。
若表达式始终为T,则do后面的循环内容会一直执行 直到表达式==F
e.g2:
class TestLoop{
public static void main(String args[]){
int i = 10;
do{
System.out.print("value of x:" + i);
i++;
System.out.print("\n");
}while(i < 20);
}
}//输出内容和e.g1一样
3.for 循环
for循环可以使一些循环结构变的更简单
for循环执行的次数是执行前就确定的 具体格式如下:
for(初始化A;布尔表达式B;更新C){
D表达式;//循环内容
}//执行顺序:A>>B(满足)>>D>>C>>B(不满足跳出for循环)
e.g3:
class TestLoop{
public static void main(String args[]){
for(int i = 10;i < 20;++i){
System.out.print("value of x:" + i);
System.out.print("\n");
}
}
}//输出内容和e.g1一样
数组的for循环用法:
for(声明语句 : 表达式)
{
//代码句子
}
声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
表达式:表达式是要访问的数组名,或者是返回值为数组的方法。
e.g4:
class TestArrLoop{
public static void main(String args[]){
int [] ages = {10,20,30,40,50};
for(int age:ages){
System.out.print(age);
System.out.print(",");
}
System.out.print("\n");
String [] names = {"Lili","Lucy","HanMeiMei","LiLei","Jim"};
for(String name:names){
System.out.print(name);
System.out.print(",");
}
}
}
/*
输出结果:
10,20,30,40,50,
Lili,Lucy,HanMeiMei,LiLei,Jim,
*/
break & continue 关键字(用法和C/C++相同)
1.
class TestLoop{
public static void main(String args[]){
int [] ages = {10,20,30,40,50};
for(int age : ages){
if(age == 30){
break;
}
System.out.print(age);
System.out.print("\n");
}
}
}
/*
输出结果:
10
20
*/
2.
class TestLoop{
public static void main(String args[]){
int [] ages = {10,20,30,40,50};
for(int age : ages){
if(age == 30){
continue;
}
System.out.print(age);
System.out.print("\n");
}
}
}
/*
**输出结果:跳出==30直接执行下一个**
10
20
40
50
*/
原文地址:http://blog.51cto.com/12431776/2058679
时间: 2024-11-05 02:27:58