循环结构
-
while循环 -
do...while循环 -
for循环 -
在
JAVA5中引入了一种主要用于数组的增强型for循环
while 循环
-
while是最基本的循环,他的结构为while(布尔表达式){ //循环内容 } -
只要布尔表达式为
true,循环就会一直执行下去 -
我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环
-
少部分情况需要循环一直执行,比如服务器的请求响应监听等
-
循环条件一直为
true就会造成无限循环 (死循环),我们正常的业务编程中应该尽量避免死循环。会影响程序性能或者造成程序卡死崩溃
public class While_Demo_01 {
public static void main(String[] args) {
int int_01 = 0;
int total = 0;
while (int_01 < 100) {
int_01++;
total = int_01 + total ;
}
System.out.println("总和为: " + total + "循环了: " + int_01);
}
}
do…while 循环
-
对于
while语句而言,如果不满足条件,则不能进入循环。但有时候需要及时不满足条件,也至少执行一次 -
do...while循环和while循环相似,不同的是,do...while循环至少会执行一次do { //代码语句 }while(布尔表达式); -
while和do-While的区别-
while先判断后执行,dowhile是先执行后判断 -
Do...while总是保证循环体会被至少执行一次!这是他们的主要差别
-
public class Do_While_Demo_01 {
public static void main(String[] args) {
int int_01 = 0;
int sum = 0;
do {
sum = sum + int_01;
int_01++;
}while (int_01 <= 100);
System.out.println(sum);
}
}
对比
public class Do_While_Demo_02 {
public static void main(String[] args) {
int int_01 = 0;
while (int_01 < 0) {
int_01++;
System.out.println(int_01);
}
System.out.println("-------------------");
do {
int_01++;
System.out.println(int_01);
}while (int_01 < 0);
}
}
For 循环
-
虽然所有循环结构都可以用
while或者do...while表示,单JAVA提供了另一种语句——For循环,使一些循环结构变得更加简单 -
for循环语句是支持迭代的一种通用结构,是最有效、最灵活的结构 -
for循环执行的次数死在执行前就确定的for(初始化;布尔表达式;更新) { //代码语句 } -
计算 0 到 100 间 奇数 和 偶数 分别的和
public class For_Demo_01 { 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); } } -
用
for循环输出 1~1000 之间能被5整除的数,并且每行输出3个public class For_Demo_02 { public static void main(String[] args) { int sum = 0; for (int i = 0; i <= 1000; i++) { if (i % 5 == 0) { if (sum % 3 == 0) { System.out.print('\n'); } sum++; System.out.print(i); System.out.print('\t'); } } } } -
用
while循环输出1~1000 之间能被5整除的数,并且每行输出3个public class While_Demo_02 { public static void main(String[] args) { int sum = 0; int i = 0; while (i <= 1000) { if (i % 5 == 0) { if (sum % 3 == 0) { System.out.print('\n'); } System.out.print(i); System.out.print('\t'); sum++; } i++; } } } -
打印 九九乘法表
public class Demo_01 { public static void main(String[] args) { System.out.println("1x1=1"); System.out.println("1x2=2\t2x2=4"); System.out.println("1x3=3\t2x3=6\t3x3=9"); System.out.println("1x4=4\t2x4=8\t3x4=12\t4x4=16"); System.out.println("1x5=5\t2x5=10\t3x5=15\t4x5=20\t5x5=25"); System.out.println("1x6=6\t2x6=12\t3x6=18\t4x6=24\t5x6=30\t6x6=36"); System.out.println("1x7=7\t2x7=14\t3x7=21\t4x7=28\t5x7=35\t6x7=42\t7x7=49"); System.out.println("1x8=8\t2x8=16\t3x8=24\t4x8=32\t5x8=40\t6x8=48\t7x8=56\t8x8=64"); System.out.println("1x9=9\t2x9=18\t3x9=27\t4x9=36\t5x9=45\t6x9=54\t7x9=63\t8x9=72\t9x9=81"); } }以上就是最快输出9*9乘法表的方法public class For_99_Demo_01 { public static void main(String[] args) { for (int i = 1; i <= 9; i++) { int i_1 = 1; if (i_1 <= i) { for (i_1 = 1; i_1 <= i; i_1++) { System.out.print(i_1 + "x" + i + "=" + (i * i_1) + "\t"); } System.out.print("\n"); } } } }