我在课堂上有一个作业,但我们需要使用教师骨架代码,而不是按照自己的方式设计。评论是方法和方法的说明是我到目前为止,但我仍然不明白它应该如何工作。令我困惑的是,它需要在用户知道该做什么之前打印选项,那么如何在没有输入的情况下运行该方法呢?
/**
* Prints the main menu (see output examples), allows the user to make a selection from available operations
*
* @param input the Scanner object you created at the beginning of the main
* method. Any value other than the 4 valid selections should generate an
* invalid value prompt. Print the list again and prompt user to select a
* valid value from the list.
* @return an integer from 1-4 inclusive representing the user’s selection.
*/
public static int mainMenuOptionSelector(Scanner input){
System.out.println("Please select an option from the list below:");
System.out.println("1. Check the balance of your account");
System.out.println("2. Make a deposit");
System.out.println("3. Withdraw an amount in a specific currency");
System.out.println("4. End your session (and withdraw all remaining currency in U.S. Dollars)");
if(input.equals(1))
return 1;
else if(input.equals(2))
return 2;
else if(input.equals(3))
return 3;
else if(input.equals(4))
return 4;
else{
System.out.println("Input falied validation.");
System.out.println("Please try again");
return 0;
}
}
答案 0 :(得分:0)
您的方法需要java.util.Scanner作为输入(除非您的老师已经推出了自己的扫描仪,这将是错误的命名练习)。扫描仪提供了从各种来源读取数据的方法,例如键盘(通常为System.in
)。
其中一种方法是nextInt(),它从扫描仪的输入读取下一个int
并返回它。你可以这样做:
theSelection = input.nextInt();
然后,您可以像引用任何其他int一样引用新变量theSelection
。请注意,nextInt
方法可以抛出许多您可能想要捕获并正常处理的运行时异常。