如何让控制台扫描程序再次使用上次输入?
如果我有y=scanner.nextInt();
之类的话
我希望我下次使用扫描仪时使用前一行的相同输入,我该怎么做?
答案 0 :(得分:1)
如何让控制台扫描程序再次使用上次输入?
唐'吨。将最后一个输入保存在变量或集合中,然后以这种方式访问它。
答案 1 :(得分:1)
y=scanner.nextInt();//user inputs 5
y=5;// You can reuse y
x=y;// assign same input to another value
答案 2 :(得分:1)
我希望我下次使用扫描仪时使用上一行的相同输入,我该怎么做?
无法让Scanner
做到这一点。 Scanner API不提供任何方法来回溯到上一次成功读取操作之前的某个点。并试图通过"寻求"由于扫描仪的内部缓冲,底层流不太可能正常工作。
我能想到的最好的解决方案是:
Scanner scanner = new Scanner( ... )
while (scanner.hasNext()) {
String line = scanner.nextLine();
Scanner lineScanner = new Scanner(line);
// read tokens from lineScanner
// to "reset" to the start of the line, discard lineScanner
// and create a new one.
}
另一种方法可能只是保存您扫描的内容,并在更高级别进行重置。但是,如果您需要以不同的方式重新扫描行,那么这不起作用;例如使用nextInt()
来电代替next()
来电。