while循环基础
循环结构
一直不停的执行相同的操作
- while循环
- do...while循环
- for 循环
- 在java5中引入一种主要用于数组的增强型for循环
while 循环
- while是最基本的循环,它的结构是:
while(布尔表达式){
//循环内容
}
- 只要表达式为true,循环就会一直执行下去。
- 我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环。
package com.sgz.structure;
public class WhileDemo01 {
public static void main(String[] args) {
//输出1-100
int i =0;
while(i<100==true){
i++;
System.out.println(i);
}
}
}
依次输出1-100
- 循环条件一直为true就会造成无限循环的死循环,我们正常业务编程中应该尽量避免死循环的出现,会影响程序的性能或造成程序的卡死崩溃!
- 除了等待客户端连接,定时检查等情形
package com.sgz.structure;
public class WhlieDemo02 {
public static void main(String[] args) {
while (true){//永远会等于true,会一直执行
//等待客户端连接
//定时检查
/*这是一个死循环
正常情况下要避免死循环,否则会使程序崩溃。
*/
}
}
}
- 计算1+2+3+...+100
package com.sgz.structure;
public class WhileDemo03 {
public static void main(String[] args) {
//计算1+2+3+...+100
int i = 0;
int sum = 0;
while (i<=100){
sum=sum+i;
i++;
}
System.out.println(sum);//在while循环外面,输出结果5050
}
}
do...while循环
-
对于while语句而言,如果不满足条件,则不能进入循环,但有时候我们需要即使不满足条件,也至少执行一次
-
do...while循环和while循环相似,不同的是,do...while循环至少会执行一次
do{ //代码语句 }while(布尔值表达式); -
while和do...while的区别:
- while先判断后执行,do while先执行后判断
- do... while 总是保证循环体会被至少执行一次!
package com.sgz.structure;
public class DoWhileDemo01 {
public static void main(String[] args) {
int i =0;
int sum =0;
while(i<=100){
sum=sum+i;
i++;
}
//此时sum=5050,i=101
System.out.println(sum);
do {
sum = sum + i;
i++;
}while (i<=100);//布尔条件在后面,先执行,后判断
System.out.println(sum);
}
}
//分别输出结果5050 5151
- 区别
- 不进循环
public class DoWhileDemo02 {
public static void main(String[] args) {
int a = 0;
while(a<0){//判断为false,不进循环
System.out.println(a);
a++;
}
System.out.println("====================");
do {
System.out.println(a);
a++;
}while(a<0);//至少进一次循环
}
}//只输出下面的0

浙公网安备 33010602011771号