1

我应该编写一些允许用户输入输入的东西,这些输入应该是一系列整数,用空格分隔,没有非数字/非空格字符。

最好的方法是什么?我是否将整个字符串以某种方式拆分为一个数组并检查每个字符串?

4

3 回答 3

3

您可能想要Scanner专门为此使用Scanner.nextInt()and Scanner.hasNextInt()

查看文档,但是使用扫描仪可以轻松地从输入中获取标记化的整数,并将它们解析为ints !

于 2012-04-13T17:25:51.120 回答
0

这是我用的

int getInputInt(){
   final Scanner keyboard = new Scanner(System.in);

   int inputInt = 0;
boolean continueLoop = true;
while( continueLoop = true ) {
  try{
  inputInt= keyboard.nextInt();
  continueLoop = false;
  break;
  } catch ( InputMismatchException e ) {
  keyboard.nextLine();
  out.println("That key is not an integer. Try again");
  }
}
return inputInt;
   }
于 2012-04-13T17:28:05.787 回答
0

代码片段中有错误。

1]虽然在java中不允许初始化。

2] 该方法应返回一个 int 数组。因此,您执行 hasNextInt 并将 nextInt 存储在数组中。

于 2012-04-13T17:33:00.957 回答