1.for 循环语句
语法:for(initialization;condition;iteration)
public class A {
public static void main(String[] args) {
for(int i=1,j=1; i<=3&&j<=3; i++,j++)
{
System.out.println(i*j);
}
}
}
运行结果:
1
4
9
注意:
声明和初始化必须在执行循环操作之前,并且只会执行一次;可以有多个。
条件表达式在每次执行循环体都要进行一次判断,值为true则执行循环体,只能有一个条件表达式;
循环表达式在每执行完循环体后都会执行一次;可以有多个循环表达式。
2.for循环的嵌套
打印九九乘法表
public class A {
public static void main(String[] args) {
for(int i=1;i<=9;i++)
{
System.out.println();
for(int j=1;j<=i;j++)
{
System.out.print(i+"x"+j+"="+(i*j)+"\t");
}
}
}
}
运行结果:
1x1=1
2x1=22x2=4
3x1=33x2=63x3=9
4x1=44x2=84x3=124x4=16
5x1=55x2=105x3=155x4=205x5=25
6x1=66x2=126x3=186x4=246x5=306x6=36
7x1=77x2=147x3=217x4=287x5=357x6=427x7=49
8x1=88x2=168x3=248x4=328x5=408x6=488x7=568x8=64
9x1=99x2=189x3=279x4=369x5=459x6=549x7=639x8=729x9=81
3.while循环语句
计算1+2+3+4+····+100=
public class A {
public static void main(String[] args) {
int i=1,sum=0;
while(i<=100)
{
sum=sum+i;
i++;
}
System.out.println(sum);
}
}
运行结果:
5050
while循环:先判断后执行,如果判断表达式为真则执行循环,否则退出。
4.do···while循环
计算1+2+3+4+····+100=
public class A {
public static void main(String[] args) {
int i=1,sum=0;
do
{
sum=sum+i;
i++;
}
while(i<=100);
System.out.println(sum);
}
}
运行结果:
5050
do···while循环:先执行后判断,至少执行一次循环,如果判断表达式为真则继续循环,否则退出。
温馨提示:不要忘了while()后的";"
5.break与continue与return
break:跳出当前循环,注意是当前不是整个循环。
continue:跳过本次循环continue后的语句,进行下一次循环。
return:退出整体循环体,在没有嵌套结构时与break效果一致。
特别的:break语句可以通过标签来控制退出哪层循环结构。
public class A {
public static void main(String[] args) {
one:for(int i=0; i<3; i++)
{
System.out.println("我是第一层循环");
two:for(int j=0;j<3;j++)
{
System.out.println("我是第二层循环");
break one;
}
}
System.out.println("--循环已退出--");
}
}
运行结果:
我是第一层循环
我是第二层循环
--循环已退出--
特别的:continue语句可以通过标签来控制跳转到任意循环层。
public class A {
public static void main(String[] args) {
one:for(int i=0; i<3; i++)
{
System.out.println("我是第一层循环");
two:for(;;)
{
System.out.println("我是第二层循环");
continue one;
}
}
System.out.println("--循环已退出--");
}
}
运行结果:
我是第一层循环
我是第二层循环
我是第一层循环
我是第二层循环
我是第一层循环
我是第二层循环
--循环已退出--