gpt4 book ai didi

java - 将扫描仪输入直接插入数组列表

转载 作者:行者123 更新时间:2023-12-01 11:08:07 25 4
gpt4 key购买 nike

我想从扫描仪中提取输入并将其直接插入到类型安全的数组列表中。这是我的代码:

public static void main(String args[])
{
List<Integer> arglist=new ArrayList<Integer>();
List<Integer> resultlist=new ArrayList<Integer>();
Scanner in=new Scanner(System.in);
System.out.println("Scanning");
while(in.hasNext())
{
arglist.add(in.nextInt());
}
System.out.println("Scan complete, sorting...");
System.out.println(arglist);
resultlist=qksort(arglist);
System.out.println(resultlist);

}

仅当我使用 Ctrl+Z 显式终止输入时,此功能才有效。当我按“Enter”键时,流不应该终止吗?

最佳答案

不,当您按 Enter 键时,它不会终止。扫描器会将其读取为换行符,并将其解释为标记之间的分隔符,然后愉快地继续。

如果您想继续处理,一个非常简单的解决方案是:

while (in.hasNextInt()) {
argList.add(in.nextInt());
}

这样,当您第一次输入非数字或空格的内容(例如“exit”)时,它将继续。

如果您特别想只输入一行,那么您可以使用扫描仪读取一行,然后扫描该行:

Scanner scanner = new Scanner(System.in);
scanner = new Scanner(scanner.nextLine());

关于java - 将扫描仪输入直接插入数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32714391/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com