gpt4 book ai didi

java - 扫描仪输入值未全部存储

转载 作者:行者123 更新时间:2023-11-30 05:31:16 26 4
gpt4 key购买 nike

我有一个扫描仪,可以读取字符串作为坐标输入。我必须将这些字符串转换为整数并将它们存储在坐标数组列表中,但我输入的最后一个值没有存储在数组列表中。

我尝试在 for 循环之外使用 startEndLineScan.nextLine(); 但仍然没有任何变化 我也尝试在存储和解析字符串时使用 while 循环而不是 for 循环,但是我得到了相同的结果。

ArrayList<Integer> convertedCoords = new ArrayList<Integer>();
String samplePointsCoords[];
Scanner startEndLineScan = new Scanner(System.in);
int count = 1;
while (startEndLineScan.hasNextLine()) {
startEndPointsInputs = startEndLineScan.nextLine();
samplePointsCoords = startEndPointsInputs.split(",");
if (count < 2) {
for (int i = 0; i < samplePointsCoords.length; ++i) {
convertedCoords.add(Integer.parseInt(samplePointsCoords[i]));
}
count++;
} else {
break;
}
}
System.out.print("Points: " + convertedCoords)

输入:

1,2
3,4

预期结果:
点数:[1,2,3,4]

实际结果
积分:[1,2]

最佳答案

ArrayList<Integer> convertedCoords = new ArrayList<Integer>();
String samplePointsCoords[];
Scanner startEndLineScan = new Scanner(System.in);
int count;
while (startEndLineScan.hasNextLine()) {
count = 1;
startEndPointsInputs = startEndLineScan.nextLine();
samplePointsCoords = startEndPointsInputs.split(",");
if (count < 2) {
for (int i = 0; i < samplePointsCoords.length; ++i) {
convertedCoords.add(Integer.parseInt(samplePointsCoords[i]));
}
count++;
} else {
break;
}
}
System.out.print("Points: " + convertedCoords)

注意 int count; 在每个循环开始时声明并重新初始化这将修复您的代码,但您应该真正尝试理解您所写的内容!干杯。

关于java - 扫描仪输入值未全部存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57501918/

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