这是正确的语法,并且100%有效。但是我的讲师希望此语法的工作方式不带'break'功能,但仍然使用'do-while'功能。有人可以帮我吗?我被困住了:(
这是代码:
import java.util.Scanner;
public class NewClass {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
int[] bil = new int[10];
int x=0;
while(x!=10){
System.out.print("Input ke-"+(x+1)+" : ");
bil[x]=input.nextInt();
if(bil[x]==0) {
x++;
break;
}
x++;
}
System.out.println("==============================");
for(int j=0; j<x; j++){
System.out.println("Data ke-"+(j+1)+": "+bil[j]);
}
}
}
答案 0 :(得分:0)
import java.util.Scanner;
public class NewClass {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
int[] bil = new int[10];
int x=0;
do{
System.out.print("Input ke-"+(x+1)+" : ");
bil[x]=input.nextInt();
x++;
}while(x!=9 && bil[x-1] != 0);
System.out.println("==============================");
int j = 0;
do{
System.out.println("Data ke-"+(j+1)+": "+bil[j]);
j++;
}while (j != x-1);
}
}
Do while检查循环运行后的条件。因此,您可以使用它们来打破循环。
我在第一个循环中将x!= 10
更改为x!=9
,因为在x变成9后循环必须中断,否则数组将存储11个元素。
for循环也做了类似的事情。
如果您想了解更多信息,请进一步研究do-while
是一个出口控制循环,而while
是一个入口控制循环。