Java循环结构
while循环
-
语法:while(布尔表达式){
//循环内容
} -
布尔表达式为true,循环会一直执行,但是大多数情况下需要有一个失效方式终止循环。
-
少部分情况下需要一直执行,比如服务器监听。
实例:
public class WhileTest1 {
public static void main(String[] args) {
//输出1-100
int i = 0;
while (i<100){
i++;
System.out.println(i);
}
}
}
public class WhileTest2 {
public static void main(String[] args) {
int i = 0;
int sum = 0;
while (i<100){
i++;
sum = sum+i;
}
System.out.println(sum);
}
}
do…while循环
-
语法:do{
//代码语句
}while(布尔表达式); -
即使不满足条件,至少会执行一次。
实例:
public class DoWhileTest1 {
public static void main(String[] args) {
int i = 0;
int sum = 0;
do {
i++;
sum = sum +i;
}
while (i<100);
System.out.println(sum);
}
}
- while和do while循环区别实例:
public class DoWhileTest2 {
public static void main(String[] args) {
int a=0;
while (a<0){
System.out.println(a);
a++;
}
System.out.println("===========================================");
do {
System.out.println(a);
a++;
}
while (a<0);
System.out.println(a);
}
}//输出分割线,0,1。
for循环
- 语法:for(初始化;布尔表达式;更新){
//代码语句
}
实例:
public class ForTest1 {
public static void main(String[] args) {
int a = 1;//初始化条件
while (a<=100){//条件判断
System.out.println(a);//循环体
a+=2;//迭代
}
System.out.println("while循环结束!");
for (int i=1;i<100;i++){
//初始化,条件判断,迭代
System.out.println(i);
}
System.out.println("for循环结束!");
}
}
-
for循环是最有效最灵活的循环结构,其执行次数在执行前便已经确定。
-
for循环快捷写法,比如需要100次循环,在idea里面输入100.for,便自动生成一个100次的循环。
-
for循环的注意事项:最先执行初始化步骤,可以声明一种类型,可以初始化一个或者多个循环控制变量,也可以是空语句;
然后检测布尔表达式的值,为true则执行循环体,为false则循环中止,此部分也可以为空语句;
执行一次循环后,通过第三部分(也可以为空)更新循环控制变量(第一部分),再次检测布尔表达式。 -
当for循环里面全都是空语句时,便成为死循环,如:for(;;){
} -
计算0-100间奇数和偶数的和
public class ForTest2 {
public static void main(String[] args) {
int oddSum = 0;//奇数和
int evenSum = 0;//偶数和
for (int i = 0; i < 100; i++) {
if (i % 2 != 0) {
oddSum = oddSum + i;
} else {
evenSum = evenSum + i;
}
}
System.out.println("奇数和="+oddSum);
System.out.println("偶数和="+evenSum);
}
}
- 用while或者for循环输出1-1000之间能被3整除的数,每行输出3个。
package com.ilzy.blog.structure;
public class ForTest3 {
public static void main(String[] args) {
int count = 0;
for (int i = 0; i <= 1000; i++) {
if (i%50){
System.out.print(i+"\t");// \t表示一个tab的空格
count++;
}
if (count%30){
System.out.println("\n");//换行
//System.out.println();//换行
}
}
}
}
- 打印九九乘法表
public class ForTest4 {
public static void main(String[] args) {
for (int j = 1; j <= 9; j++) {
for (int i = 1; i <= j; i++) {
System.out.print(j+"*"+i+"="+j*i+"\t");
}
System.out.println();
}
}
}```