Java迴圈結構語句
阿新 • • 發佈:2021-12-08
迴圈結構語句
while迴圈
while是最基本的迴圈
結構示例:
whilt (布林表示式) {
迴圈內容
}
只要布林表示式為true,迴圈就會一直執行下去。
我們大多數情況是會讓迴圈停止下來的,我們需要一個讓表示式失效的方式來結束迴圈。
少部分情況需要迴圈一直執行,比如伺服器的請求響應監聽等。
迴圈條件一直為true就會造成無限迴圈【死迴圈】,我們正常的業務程式設計中應該儘量避免死迴圈,會影響程式效能或者造成程式卡死崩潰。
思考:計算1+2+3+...+100=
程式碼示例:
int i = 0; int num = 0; while(i<=100) { num = num + i; i++; System.out.println(num); }
do...while迴圈
對於while語句而言,如果不滿足條件,則不能進入迴圈。但有時候我們需要即使不滿足條件,也至少執行一次。
do...while迴圈和while迴圈相似,不同的是,go...while迴圈至少會執行一次。
結構程式碼:
do {
程式碼語句
}while(布林表示式);
- while和do...while的區別:
- while先判斷後執行,do...while先執行後判斷
- do...while總是保證迴圈體會被至少執行一次,這是他們的主要差別。
for迴圈
-
雖然所有迴圈結構都可以用while或者do...while表示,但Java提供了另一種語句——for迴圈,使一些迴圈結構變得更加簡單。
-
for迴圈語句是支援迭代的一種通用結構,是最有效、最靈活的迴圈結構。
-
for迴圈執行的此說實在執行前就確定的。語法格式如下:
for (初始值;布林表示式;更新) { 程式碼語句 }
- 練習1:計算0到100之間的奇數和偶數的和
- 練習2:用while或for迴圈輸出1-1000之間能被5整除的數,並且每行輸出3個
- 練習3:列印九九乘法表
- 下面是答案
.
.
.
.
.
.
.
..
.
.
.
.
.
..
.
..
.
.
.
.
..
.
.
.
.
.
練習1:
自己做的
for(i1=1;i1<100;i1+=2) { int num1 = num1 + i1; System.out.println(num1); } for(i2=0;i<=100;i2+=2) { int num2 = num3 + i2; System.out.println(num2); }
狂神教的:
int oddSum = 0;
int evenSum = 0;
for (int i = 0; i <= 100; i++) {
if(i%2!=0) { //判斷i是否能整除2
oddSum +=i;
}else {
evenSum +=i;
}
}
System.out.println("奇數的和:"+oddSum);
System.out.println("偶數的和:"+evenSum);
練習2:
自己做的:
不會做
老秦教的:
for ()for (int i1 = 0; i1 < 1000; i1++) {
if (i1%5==0) {
System.out.print(i1+"\t");
}
if (i1%(3*5)==0) {//換行
System.out.println();
}
//println 輸出完會換行
//println 輸出完不會換行
}
練習3:
//先練習一個1*9的
int b = 1;
for (int i = 0; i <= 9; i++) {
int num = i*b;
System.out.print(i+"*"+b+"="+i*b+"\t");
//再試試9*9的
for (int i1 = 1; i1 <=9; i1++) {
for (int i2 = 1; i2 <=9; i2++) {
int num2 = i1 * i2;
System.out.print(i1 + "*" + i2 + "=" + (i1 * i2) + "\t");
//但是在下不會弄成方塊格式
}
System.out.println();
}
}
老秦教的:
1.先列印第一列,
2.我們把固定的1再用一個迴圈包起來
3.去掉重複項:m<=j
4.調整樣式
for (int j = 1; j <=9; j++) {
for (int m = 1; m<=j; m++) {
int num2 = j * m;
System.out.print(j + "*" + m + "=" + (j * m) + "\t");
}
System.out.println();//本行用來調整格式
}