java - 通过扫描仪读取时,先读取最后输入的内容

标签 java java.util.scanner

Scanner in=new Scanner(System.in);
while(true){
    int X = in.nextInt();
    System.out.println(X);
}

上面的代码只能按照我输入的顺序读取数字。 例如:1 2 3 4 这些数字将被读作 1 2 3 4

我希望以相反的顺序阅读它们。我找不到任何方法来做到这一点。

最佳答案

您可以“无需任何其他变量”递归地执行此操作:

public static void revNumbers(Scanner in) {
    if(!in.hasNextInt())
        return;
    int X = in.nextInt();
    revNumbers(in);
    System.out.println(X);
}

public static void main(String[] args) {
    revNumbers(new Scanner(System.in));
}

关于java - 通过扫描仪读取时,先读取最后输入的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30441458/

相关文章:

java - 在eclipse中配置类路径

JAVA - 静态变量在程序重新启动时重置

java - 阵列列表的扫描仪错误

java - 当我打开 Netbeans 并启动程序时,它不允许我在终端中输入任何代码

java - java 子线程数组访问

java - 在不使用读取内容的情况下调用 Scanner 方法是否不好?

java - hasNext() - 它什么时候阻塞,为什么?

Java程序无法读取字符

java - 使用 Commons-Imaging 创建多页 TIFF

java - 从扫描线上抓取 double 。