循环结构:
1、while 先进行判断,再进行逻辑执行
需要四部分组成
初始化:变量的初始化
条件判断:必须要求返回true或者false的值
循环体:具体的要执行的逻辑代码
迭代变量:促使此循环结构
while(true)死循环,循环永远 不会结束,除非遇到break,return
举例:
求1000以内的奇数和
public class Demo {
public static void main(String[] args){
int i = 0;
//求和最终的存储变量
int sum = 0;
while(i<=1000) {
if(i%2==1) {
sum+=i;
}
i++;
}
System.out.println("1000以内的奇数和为:"+sum);
}
}
2、do while 先执行代码逻辑,再执行判断
举例:
public static void main(String[] args){
int i = 1;
do{
System.out.println("第"+i+"遍输出");
i++;
}while(i<=100);
}
//最终实现的是第100遍输出。要打印多少次,while那里就输多少次
Do while 至少保证循环体被执行一次。
3. 第三种循环结构是for循环,使用最多
语法规则:
for(初始化1;条件表达式2;步进器4){
代码逻辑3
}
使用for循环的好处:
1、代码简洁
2、变量初始化的时候,for循环的作用域仅仅是当前for循环结构,就是i=1仅在这个for循环里作用;while循环的作用域是从变量的定义开始到整个方法结束
public class ForDemo{
public static void main(String[] args){
/*
for(int i = 1;i<=100;i++){
System.out.println("第"+i+"遍输出");
}
//100以内的偶数和
int sum = 0;
for(int i = 1;i<=100;i++){
if(i%2==0){
sum+=i;
}
}
System.out.println("100以内的偶数和是:"+sum);
*/
for(int i =1;;){
System.out.println(i);
}
}
}
break:跳出本层循环,不执行本循环中剩余的语句
当包含多层循环的时候,break只能跳出内层循环,无法跳出外层循环
continue:跳出本次循环,意思就是符合continue的条件时,就跳过但循环继续
return终止当前方法
/*
把100~150之间不能被3整除的数输出:
continue:跳出本次循环
*/
public class ContinueDemo{
public static void main(String[] args){
for(int i = 100;i<150;i++){
if(i%3==0){
continue;
}
System.out.println(i);
}
}
}