gpt4 book ai didi

java - 使用java的扫描器读取输入

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

假设我有以下输入:

3
24 1
4358 754
305 794

当我尝试按如下方式阅读它时,它不起作用:

Scanner sc = new Scanner(System.in);
while(sc.hasNextLine())
{
sc.nextLine();
int a = sc.nextInt();
int b = sc.nextInt();
//DoSomethingWithAandB
}

我这样做是因为首先我想跳过第一行。然后我读了两个整数。之后,如果还有另一行,我会使用 sc.nextLine() 转到它,然后再次读取整数。怎么了?

最佳答案

在上面的输入中,第一行应该是行数,所以一旦你读了它,你可以做一个循环,然后读取行并拆分它,这样你就得到了你的数字。

Scanner in = new Scanner(System.in);
int numberOfLines = in.nextInt();

for (int i = 0; i < numberOfLines; ++i) {
String line = in.nextLine();
String[] lineSplit = line.split(" ");
int a = Integer.parseInt(lineSplit[0]);
int b = Integer.parseInt(lineSplit[1]);
//DoSomethingWithAandB
}

如果不需要读取第一行,可以使用while with in.hasNextLine()

Scanner in = new Scanner(System.in);
in.nextInt();

while (in.hasNextLine()) {
String line = in.nextLine();
String[] lineSplit = line.split(" ");
int a = Integer.parseInt(lineSplit[0]);
int b = Integer.parseInt(lineSplit[1]);
//DoSomethingWithAandB
}

关于java - 使用java的扫描器读取输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54723953/

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