我正在尝试制作一种自动柜员机。我希望程序执行以下操作:如果用户输入数字,则数字将乘以12。
我已经有以下代码:
import java.util.Scanner;
public class DisplayMultiples {
public static void main(String args[]) {
Scanner keyboardInput = new Scanner(System.in);
System.out.println("Enter a number between 1 and 12 ");
keyboardInput.nextLine();
int b = 12;
if() {
for (int i = 1; i < b; i++) {
System.out.println(i*b);
}
else {
System.out.println("Error, this value is never used");
}
}
}
答案 0 :(得分:1)
答案 1 :(得分:0)
最简单的方法是从int
获取一个Scanner
,然后检查它是否在1到12之间,如果是,则将其乘以12。
Scanner keyboardInput = new Scanner(System.in);
System.out.println("Enter a number between 1 and 12 ");
int number = keyboardInput.nextInt();
if (number > 0 && number < 13) {
System.out.println(number * 12);
} else {
System.out.println("Error, this value is never used");
}
请注意,由于您很可能是初学者,因此在控制台中输入int
以外的任何内容都会导致错误,但我认为这对您而言并非完全必要。如果是这样,请继续阅读try...catch
。
答案 2 :(得分:-1)
这样可以避免输入非数字时出现异常。
Scanner keyboardInput = new Scanner(System.in);
System.out.println("Enter a number between 1 and 12 ");
String inpStr = keyboardInput.nextLine();
int b = 12;
int inpVal = -1;
try {
inpVal = Integer.parseInt(inpStr);
} catch (NumberFormatException nfe) {
}
if (inpVal >= 1 && inpVal <= 12) {
System.out.println(inpVal * b);
} else {
System.out.println("Error, this value is never used");
}