對while循環而言,如果不滿足條件,就不能進入循環。但有時我們需要即使不滿足條件,也要至少執行一次,這時就可以考慮使用do-while循環了。do…while循環和while循環功能相似,不同的是,do…while循環至少會執行一次。
1. do…while基本語法
do-while循環的基本語法如下:
do{
//循環體
}while(循環條件);
do-while循環屬于是一種”直到型“的循環結構。因為循環條件是在循環體的后面,所以循環體在判斷循環條件之前已經執行一次了。如果循環條件的值為true,則循環體會一直執行,直到循環條件的值為false,就結束循環。
大家注意:在do-while循環中,也是可以進行嵌套其他循環的!
1.2. 執行順序
根據do-while循環的基本語法,壹哥給大家梳理一下它的執行順序:
1.先執行一次循環體;
2.如果while循環里的條件為true,則繼續執行循環體;
3.當循環體執行完畢后,會再次判斷循環條件......;
4.直到循環條件為false,就結束循環。
1.3. 代碼案例
1.3.1 案例一
需求:用do-while循環打印100遍"跟一一哥學編程"。
public class Demo06 {
public static void main(String[] args) {
// do-while循環
// 案例:打印100遍"跟一一哥學編程"
int i = 1;
do {
//循環體至少會執行一次
System.out.println("跟一一哥學編程"+i);
//更改i變量的值
i++;
} while (i <= 100);
}
}
1.3.2 案例二
需求:學生根據老師的評語,決定是否繼續敲代碼,直到測評為ok,就結束。
public class Demo06 {
public static void main(String[] args) {
// do-while循環
//案例:學生根據老師的評語,是否繼續敲代碼,直到測評結果為ok才結束。
Scanner sc = new Scanner(System.in);
String result;
do{
System.out.println("敲代碼ing...你看我的代碼怎么樣???");
System.out.println("評價:");
//獲取屏幕上輸入的文本內容
result = sc.next();
}while(!result.equals("ok"));
}
}
2. while循環
2.1 基本語法
while循環的基本語法如下所示:
while(循環條件){
//循環體
}
while循環屬于是一種”當型“的循環結構,當循環條件為true,循環體就會執行,不滿足條件,循環體一次也不會執行。所以在while循環中,當執行到一定的程度后,循環條件要變成false,否則就會變成”死循環“。死循環會導致CPU被100%占用,用戶會感覺電腦運行緩慢,所以我們要避免編寫死循環代碼。另外如果循環條件的邏輯寫得有問題,也可能會造成意料之外的結果。
大家還要注意,在while循環中,也是可以進行嵌套其他循環的!
2.2 執行順序
根據while循環的基本語法,壹哥給大家梳理一下它的執行順序:
1.如果while循環里的條件為true,則執行循環體;
2.循環體執行完畢后,會再次判斷循環條件......;
3.直到循環條件為false,就結束循環。
2.3. 代碼案例
接下來我們就通過幾個案例來學習while循環的使用。
2.3.1 案例一
需求:用while循環打印100遍“小白學Java”
public class Demo05 {
public static void main(String[] args) {
// while循環
//打印100遍“跟壹壹哥學Java”
int i = 0;
while (i < 100) {
System.out.println("小白學Java"+i);
//注意要更改i的值,否則條件就用于為真,這就成了死循環了
i++;
}
}
}
2.3.2 案例二
需求:用while循環計算1-100的累加和
public class Demo05 {
public static void main(String[] args) {
// while循環
//計算1~100的和
int j = 1;
int sum = 0;
while(j < 101){
sum = sum + j;
j++;
}
System.out.println(sum);
}
}
2.3.3 案例三
需求:計算一個數是幾位數?
實現思路:如果我們要想實現這個需求,可以將該數循環除以10,并用一個數字記錄一共運算了幾次。
public class Demo06 {
public static void main(String[] args) {
// while循環
// 計算一個數是幾位數? 實現思路:將該數循環除以10,記錄運算了幾次
int num = 12345;
int temp = num;
if (num == 0) {
System.out.println(num + "是1位數");
} else {
// 定義一個變量,用于保存循環的次數
int count = 0;
while (num != 0) {
// 將這個數循環除以10
num = num / 10;
// 每次循環次數+1
count++;
}
System.out.println(temp + "是" + count + "位數");
}
}
}
3.while與do-while的區別
●語法格式的區別:
●執行次序不同;
●當初始循環條件不滿足時,while循環一次都不會執行;do-while循環至少會執行一次。
●while 循環在每次循環開始前首先判斷循環條件是否為真,如果為真則執行循環體,否則跳出循環。這意味著,如果循環條件一開始就為假,那么循環體將不會執行。示例代碼如下:
while (condition) {
// 循環體
}
●do-while 循環則先執行一次循環體,然后再判斷循環條件是否為真。如果循環條件為真,則繼續執行循環體,否則跳出循環。這意味著,即使循環條件一開始就為假,循環體也至少會執行一次。示例代碼如下:
do {
// 循環體
} while (condition);
●因此,while 循環適用于在執行循環體之前需要進行條件判斷的情況,而 do-while 循環適用于無論條件如何都必須至少執行一次循環體的情況。
java中do…while循環語句用法詳解
對while循環而言,如果不滿足條件,就不能進入循環。但有時我們需要即使不滿足條件,也要至少執行一次,這時就可以考慮使用do-while循環了。do…while循環和while循環功能相似,不同的是,do…while循環至少會執行一次。
1. do…while基本語法
do-while循環的基本語法如下:
do{
//循環體
}while(循環條件);
do-while循環屬于是一種”直到型“的循環結構。因為循環條件是在循環體的后面,所以循環體在判斷循環條件之前已經執行一次了。如果循環條件的值為true,則循環體會一直執行,直到循環條件的值為false,就結束循環。
大家注意:在do-while循環中,也是可以進行嵌套其他循環的!
1.2. 執行順序
根據do-while循環的基本語法,壹哥給大家梳理一下它的執行順序:
1.先執行一次循環體;
2.如果while循環里的條件為true,則繼續執行循環體;
3.當循環體執行完畢后,會再次判斷循環條件......;
4.直到循環條件為false,就結束循環。
1.3. 代碼案例
1.3.1 案例一
需求:用do-while循環打印100遍"跟一一哥學編程"。
public class Demo06 {
public static void main(String[] args) {
// do-while循環
// 案例:打印100遍"跟一一哥學編程"
int i = 1;
do {
//循環體至少會執行一次
System.out.println("跟一一哥學編程"+i);
//更改i變量的值
i++;
} while (i <= 100);
}
}
1.3.2 案例二
需求:學生根據老師的評語,決定是否繼續敲代碼,直到測評為ok,就結束。
public class Demo06 {
public static void main(String[] args) {
// do-while循環
//案例:學生根據老師的評語,是否繼續敲代碼,直到測評結果為ok才結束。
Scanner sc = new Scanner(System.in);
String result;
do{
System.out.println("敲代碼ing...你看我的代碼怎么樣???");
System.out.println("評價:");
//獲取屏幕上輸入的文本內容
result = sc.next();
}while(!result.equals("ok"));
}
}
1. while循環
2.1 基本語法
while循環的基本語法如下所示:
while(循環條件){
//循環體
}
while循環屬于是一種”當型“的循環結構,當循環條件為true,循環體就會執行,不滿足條件,循環體一次也不會執行。所以在while循環中,當執行到一定的程度后,循環條件要變成false,否則就會變成”死循環“。死循環會導致CPU被100%占用,用戶會感覺電腦運行緩慢,所以我們要避免編寫死循環代碼。另外如果循環條件的邏輯寫得有問題,也可能會造成意料之外的結果。
大家還要注意,在while循環中,也是可以進行嵌套其他循環的!
2.2 執行順序
根據while循環的基本語法,壹哥給大家梳理一下它的執行順序:
1.如果while循環里的條件為true,則執行循環體;
2.循環體執行完畢后,會再次判斷循環條件......;
3.直到循環條件為false,就結束循環。
2.3. 代碼案例
接下來我們就通過幾個案例來學習while循環的使用。
2.3.1 案例一
需求:用while循環打印100遍“小白學Java”
public class Demo05 {
public static void main(String[] args) {
// while循環
//打印100遍“跟壹壹哥學Java”
int i = 0;
while (i < 100) {
System.out.println("小白學Java"+i);
//注意要更改i的值,否則條件就用于為真,這就成了死循環了
i++;
}
}
}
2.3.2 案例二
需求:用while循環計算1-100的累加和
public class Demo05 {
public static void main(String[] args) {
// while循環
//計算1~100的和
int j = 1;
int sum = 0;
while(j < 101){
sum = sum + j;
j++;
}
System.out.println(sum);
}
}
2.3.3 案例三
需求:計算一個數是幾位數?
實現思路:如果我們要想實現這個需求,可以將該數循環除以10,并用一個數字記錄一共運算了幾次。
public class Demo06 {
public static void main(String[] args) {
// while循環
// 計算一個數是幾位數? 實現思路:將該數循環除以10,記錄運算了幾次
int num = 12345;
int temp = num;
if (num == 0) {
System.out.println(num + "是1位數");
} else {
// 定義一個變量,用于保存循環的次數
int count = 0;
while (num != 0) {
// 將這個數循環除以10
num = num / 10;
// 每次循環次數+1
count++;
}
System.out.println(temp + "是" + count + "位數");
}
}復制代碼
}
3.while與do-while的區別
●語法格式的區別:
●執行次序不同;
●當初始循環條件不滿足時,while循環一次都不會執行;do-while循環至少會執行一次。
●while 循環在每次循環開始前首先判斷循環條件是否為真,如果為真則執行循環體,否則跳出循環。這意味著,如果循環條件一開始就為假,那么循環體將不會執行。示例代碼如下:
while (condition) {
// 循環體
}
●do-while 循環則先執行一次循環體,然后再判斷循環條件是否為真。如果循環條件為真,則繼續執行循環體,否則跳出循環。這意味著,即使循環條件一開始就為假,循環體也至少會執行一次。示例代碼如下:
do {
// 循環體
} while (condition);
●因此,while 循環適用于在執行循環體之前需要進行條件判斷的情況,而 do-while 循環適用于無論條件如何都必須至少執行一次循環體的情況。