使用单个扫描仪对象扫描多行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用单个扫描仪对象扫描多行相关的知识,希望对你有一定的参考价值。

我是java的新手,所以如果这听起来绝对愚蠢,请不要降价

好吧如何使用单个扫描仪对象输入此内容

5

你好,你怎么样

欢迎来到我的世界

6 7

对于那些建议的人

scannerobj.nextInt->nextLine->nextLine->nextInt->nextInt,,,

检查出来,它不起作用!

谢谢

答案
public static void main(String[] args) {
    Scanner  in    = new Scanner(System.in);

    System.out.printf("Please specify how many lines you want to enter: ");        
    String[] input = new String[in.nextInt()];
    in.nextLine(); //consuming the <enter> from input above

    for (int i = 0; i < input.length; i++) {
        input[i] = in.nextLine();
    }

    System.out.printf("\nYour input:\n");
    for (String s : input) {
        System.out.println(s);
    }
}

样品执行:

Please specify how many lines you want to enter: 3
Line1
Line2
Line3

Your input:
Line1
Line2
Line3
另一答案
public class Sol{

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in); 

       while(sc.hasNextLine()){

           System.out.println(sc.nextLine());
       }

    }
}
另一答案

试试这段代码

Scanner  in    = new Scanner(System.in);

System.out.printf("xxxxxxxxxxxxxxx ");        
String[] input = new String[in.nextInt()];

for (int i = 0; i < input.length; i++) {
    input[i] = in.nextLine();
}

for (String s : input) {
    System.out.println(s);
}
另一答案

你也可以只尝试使用lambda:

public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    scanner.forEachRemaining(input -> System.out.println(input));
}

以上是关于使用单个扫描仪对象扫描多行的主要内容,如果未能解决你的问题,请参考以下文章

Zxing QR扫描仪onActivityResult未在片段中调用[重复]

Android zxing Journeyapps 条码扫描器内部片段

无法在片段中启动 qrCode 相机扫描仪

Golang慢扫描()多行

MySQL select in join 子句扫描太多行

扫描仪帮助 - 使用 2 种扫描仪方法和单个 getter 方法