**结案。**此问题不可复制或由打字错误引起。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。
10天前关门了。
改进这个问题
我非常困惑为什么我的代码没有运行。我最终陷入了一个永远持续的循环中,我假设这个循环是在print语句之后发生的while循环。列出的print语句打印true,因此while循环应该至少经过一次迭代。。。正确的?
这种情况不会发生,我的代码将永远运行,并且不会打印任何其他内容。
(也可以忽略带有 %
,在做大之前,我正在进行小规模的测试。)
Scanner scan = new Scanner(file);
FileWriter fw = new FileWriter(modifiedCSV);
int counter = 0;
System.out.println(scan.hasNextLine() && counter < 10);
while(scan.hasNextLine() && counter < 10);
{
System.out.println("test");
if(counter%1000000==0)
{
System.out.println("Normalizing Line: " + counter);
}
String line = scan.nextLine();
String[] lineData = line.split(",");
System.out.println("!!!!!!");
double normalizedDistance = (Double.parseDouble(lineData[3])-minDistance)/(maxDistance-minDistance);
double normalizedAngle = (Double.parseDouble(lineData[7])-minAngle)/(maxAngle-minAngle);
double normalizedFlux = (Double.parseDouble(lineData[8])-minFlux)/(maxFlux-minFlux);
fw.write(line + "," + normalizedDistance + "," + normalizedAngle + "," + normalizedFlux + "\n");
counter++;
}
1条答案
按热度按时间m0rkklqb1#
while循环是空的,因为while语句行的末尾有一个分号。