Java循环语句
- for循环(更适用于明确循环次数的)
格式:
for(循环变量(定义)初始化;布尔表达式(满足条件继续循环);循环变量更新){循环体(语句)}
例:使用for循环打印九九乘法表
for (int i=1;i<10;i++){
for (int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+(i*j)+"\t");
}
System.out.println();//换行
}
效果如下:
- while循环(适用于没有明确循环次数的)
格式:
while(循环条件布尔表达式){
循环体(语句)
}
例:int intA=0;
while (intA<10){
System.out.print(intA+"\t");
intA++;//while循环中 一定要记得对循环变量更新!!!不然容易死循环
}
- do……while (适用于没有明确循环次数的)至少会执行一次循环
格式:
do{
循环体(语句)
}while(循环条件布尔表达式)
例:int intB=0;
do {
System.out.print(intB+"\t");
intB++;
}while (intB<10);
- Java增强型for循环
主要用于增强(简化)数组、集合循环,是只读的,不能对数组进行赋值。
例:int[] arr={1,2,3,4};
for(int intT:arr){
System.out.print(intT+"\t");
}
- 跳转控制语句(关键字):break、continue、return
break:结束循环
例:for(int i=0;i<20;i++){
if(i==13){//如果i=13,就结束循环;
break;
}
System.out.print(i+"\t");
}
continue:结束当前这一次循环,进入下一次循环
例:for(int i=0;i<20;i++){
if(i%2==1){//奇数就跳到下一次循环
continue;//要放在执行代码之前
}
System.out.print(i+"\t");
}
注:如果是while 、do……while循环更应该注意 continue的位置和循环变量更新的位置关系
例:int intA=0;
while (intA<10){
if(intA%2==1){
intA++;
continue;
}
System.out.print(intA+"\t");
intA++;
}
return:结束方法。方法结束了,方法中的循环自然也结束。
例:
public static void test(){
for(int i=0;i<20;i++){
if(i==13){
return;
}
System.out.print(i+"\t");
}
System.out.println("test结束");//换行
}
死循环
for死循环格式
for(;;){
}
while死循环格式
while(true){
}
do……while死循环格式
do{
}while(true);
三种循环的区别:
for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行)
do……while循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断)
for和while循环的区别:
条件控制语句所控制的自增变量,因为归属for循环的语句结构中,在for循环结束后,就不能再次被访问到了
条件控制语句所控制的自增变量,对于while循环来说不归属其语法结构中,在while循环结束后,该变量还可以继续使用。
三种循环的使用场景
明确循环次数,推荐使用for循环
不明确循环次数,推荐使用while循环
do……while循环,很少使用