gpt4 book ai didi

java - 如果是字符串,则保存到变量;否则,忽略其余的和下一行

转载 作者:行者123 更新时间:2023-11-30 07:45:19 25 4
gpt4 key购买 nike

这是我的代码

while (input.hasNextLine()) {
readingInput = input.nextLine();
readLine = new Scanner(readingInput);

readLine.useDelimiter(", ");
lastName = readLine.next();
firstName = readLine.next();
stdtID = readLine.next();

readLine.useDelimiter(", ");
if (!readLine.hasNextInt()) {
middleName = readLine.next();
}

System.out.printf("%s, %s, %s, %s\n", lastName, firstName, stdtID, middleName);
}

这是我的输出:

1.)   Cowden, Amy, 1030440277,  17 15 27 7 19 4 29 101 22 29 14 6 14 89 22 47 28 
Smithson, Ian John, 1000349923, Randall
O'Smith, John, 1000453232, Maynard
4.) Weidmann, Nathan, 1000004345, 7 34 24 108 1 23 2 13 12 67 29 48 14 62 9 46 6
Albert, James, 1002334576, Elliot
Herand, Ameera, 1000399752, Aisha Su

BUILD SUCCESSFUL (total time: 0 seconds)

我的问题是它应该检查学生 ID (1000XXXXXX) 之后是否有中间名,如果有中间名,那么它应该将其存储在 middlename 变量中。如果没有中间名,那么它应该忽略其余的整数,并转到下一行,但相反,它将整数存储到 middleName 变量中,如 #1 和 #4 所示(我将它们标记为为了更容易注意到)...我如何让它跳过而不存储整数,然后继续下一行?我尝试了“if int, nextline”,但它不起作用??

更新

这是我的输入文件

Cowden, Amy, 1030440277, 17 15 27 7 19 4 29 101 22 29 14 6 14 89 22 47 28 
Smithson, Ian John, 1000349923, Randall, 18 54 22 92 4 98 27 15 5 50 12 89 26 95 2
O'Smith, John, 1000453232, Maynard, 7 77 12 48 17 98 0 88 26 79 9 86 27 87 15 51
Weidmann, Nathan, 1000004345, 7 34 24 108 1 23 2 13 12 67 29 48 14 62 9 46 6
Albert, James, 1002334576, Elliot, 20 23 12 99 5 45 6 11 1 49 15 92 5 61 20 9 11
Herand, Ameera, 1000399752, Aisha Su, 20 60 25 56

最佳答案

你可以做的一件事是

public boolean isInt(String input) {
try {
Integer.parseInt(input);
} catch(NumberFormatException e) {
return false;
}
return true;
}

它可能看起来很难看,但我认为它可以用于测试从读取文件中获得的字符串是否代表整数。

关于java - 如果是字符串,则保存到变量;否则,忽略其余的和下一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34025256/

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