我正在寻找一种检索用户输入的方法。我找到了两个解决方案一个使用Scanner
,另一个使用BufferedReader
。
我注意到BufferedReader
只返回String
。
我正在寻找一种安全地从用户输入中检索信息的方法。
在下面的示例中,我想将Cname存储为String
,将等级和权重存储为float
。
关于如何最好地实现其类型的任何建议?我知道有几种方法,比如stringToInt或nextInt,甚至可以编写一些验证函数。
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
Cname = br.readLine();
System.out.println("Enter your Course grade : ");
Grade = br.readLine();
System.out.println("Enter your Course weight : ");
Weight = br.readLine();
非常感谢,对不起我的挑剔问题。
答案 0 :(得分:1)
在Java中从键盘检索用户输入的最常用方法是使用Scanner
。我就是这样做的:
Scanner scanner = new Scanner(System.in);
System.out.println("Enter your course name: ");
String courseName = scanner.nextLine();
System.out.println("Enter your course grade: ");
float courseGrade = scanner.nextFloat();
System.out.println("Enter your course weight: ");
float courseWeight = scanner.nextFloat();
scanner.close();
使用float
而不是double
是否有特定原因?如果没有,我可能会坚持使用双倍。
答案 1 :(得分:0)
您可以使用scanner
方法来适应每种数据类型。
有关更多信息,请参阅以下文档: http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html