我想接受来自用户的3个整数输入。如何忽略行中第一个整数之后的任何内容?例如,当我输入1 2 3
或1 abc 3
时,int test[]
变量将只接受1
,而该行的其余部分将被忽略。Java如何忽略空白后的任何输入?
目标:忽略(或清除)第一个整数之后的任何内容(从第一个空格开始),包括任何空格或字符。如果可能的话,向用户发出警告以警告用户不能在输入中输入空白将是非常好的。我没有找到从同一行读取多个整数的解决方案。
这是我有:
private final int[] test = new int[4]; // I just use 1-3
Scanner input = new Scanner(System.in);
System.out.print("1st Integer: ");
test[1] = input.nextInt();
System.out.print("2nd Integer: ");
test[2] = input.nextInt();
System.out.print("3rd Integer: ");
test[3] = input.nextInt();
对于上面的代码中,如果我简单输入的整数例如1 enter 2 enter 3 enter
,没关系。但是,当我输入类似1 2 3
(3个整数之间的空白),它只是输出是这样的:
1st Integer: 1 2 3
2nd Integer: 3rd Integer:
我想我的代码是这样的:
1st Integer: 1
2nd Integer: 2
3rd Integer: 3
阅读'Scanner'文档,看看是否有方法可以读取一行的剩余内容。如果是这样,那就使用它。 – Tom
改为使用'Scanner.readLine()'来实现你的验证。 –
[如何从Java中的标准输入读取整数值]可能的重复(http://stackoverflow.com/questions/2506077/how-to-read-integer-value-from-the-standard-input-in- java) –