我正在使用扫描仪在java中接受用户输入。当我使用nextInt()并且用户输入“2 5”时,则赋值“2”并丢弃5。如果我想要显示这样的输入是错误的呢? 我想到的一个解决方案是我可以使用nextString()而不是nextInt(),然后按照我的出路工作。但任何人都可以提出更好的解决方案吗?扫描仪和nextInt舍弃整数
我意识到它不会在空间之后丢掉整数,而是将它用于下一个输入。
import java.util.Scanner;
class Test{
static Scanner in=new Scanner(System.in);
static void trial(){
int k=in.nextInt();
System.out.println(k);
System.out.println(k);
}
public static void main(String[] args){
int k=in.nextInt();
System.out.println(k);
System.out.println(k);
trial();
}
}
'nextInt()'将读取一个'int'。如果你想读另一个,请再次调用它。 – nhahtdh 2012-07-25 05:23:47
这不应该发生。你能否也发布代码片段?你有没有尝试再次调用nextInt()? – SiB 2012-07-25 05:24:58