作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
public class child {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int AGE;
System.out.println("Enter Child's number(s) of Days: ");
AGE = scan.nextInt();
if (AGE == 0 || AGE == 1){
System.out.println("Classification: New Born");
}
else if (AGE >= 2 && AGE <= 10){
System.out.println("Classification: Infant");
}
else if (AGE > 9 && AGE < 19){
System.out.println("Classification: New Born");
}
else if (AGE > 17 && AGE < 37){
System.out.println("Classification: TODDLER");
}
else if (AGE > 36 && AGE < 120 ) {
System.out.println("Classification: KID");
}
else{
System.out.println("Classification: Out of Range");
System.out.println("Enter a number again:");
AGE = scan.nextInt();
if (AGE == 0 || AGE == 1){
System.out.println("Classification: New Born");
}
else if (AGE >= 2 && AGE <= 10){
System.out.println("Classification: Infant");
}
else if (AGE > 9 && AGE < 19){
System.out.println("Classification: New Born");
}
else if (AGE > 17 && AGE < 37){
System.out.println("Classification: TODDLER");
}
else if (AGE > 36 && AGE < 120 ) {
System.out.println("Classification: KID");
}
else{
System.out.println("Classification: Out of Range");
System.out.println("Enter a number again:");
AGE = scan.nextInt();
}
}
}
}
所以我根据 child 的天数对他们进行了分类。
我如何简化这段代码,因为如果用户输入一个超出范围的数字,程序将提示用户输入一个值,但如果用户再次输入一个超出范围的数字,程序现在将停止提示用户输入另一个数字,因为如果我在 else 下放置另一个条件构造,它会使我的代码更长,所以我的问题是如何缩短我的代码,但如果输入的数字是,程序将继续提示用户超出范围。
示例输出 输入 child 的天数: 121 分类:超出范围 再次输入一个数字://程序会再次提示用户 -1//但是现在程序不会打印超出范围/如何使程序提示用户再次输入数字并使 我的程序更短/
最佳答案
您应该熟悉 while 循环。
只要在每次迭代后条件保持为真,它就会循环。
Scanner scan = new Scanner(System.in);
while(true) {
System.out.println("Enter Child's number(s) of Days: ");
int AGE = scan.nextInt();
if (AGE == 0 || AGE == 1) {
System.out.println("Classification: New Born");
} else if (AGE >= 2 && AGE <= 10) {
System.out.println("Classification: Infant");
} else if (AGE > 9 && AGE < 19) {
System.out.println("Classification: New Born");
} else if (AGE > 17 && AGE < 37) {
System.out.println("Classification: TODDLER");
} else if (AGE > 36 && AGE < 120) {
System.out.println("Classification: KID");
} else {
System.out.println("Classification: Out of Range");
}
}
附带说明一下,Java 约定是以大写字母开头的类名(child -> Child)。
关于java - 如何让一个程序不断提示用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46172852/
我是一名优秀的程序员,十分优秀!