我有一个程序,我需要逐字阅读一个文件并将其保存在一个String变量中。这工作正常(我使用一个while循环),但问题是我的字符串变量在循环外没有相同的值。如果我检查while循环中包含的变量,我会得到30000多个字,但是当我在while循环外尝试同样的东西时,只会出现1个字。在while循环中初始化变量
String ord = null;
while (fil.hasNext()) {
ord = leser.next();
System.out.println(ord); //If I print it here I get the whole file
}
System.out.println(ord); // If i try to print out the content here, I only get 1 word
我不明白为什么变量“ord”在循环内部和外部不包含相同的内容,我该如何解决这个问题?我当然需要在我的程序中的其他地方使用这个变量,但由于只存储了一个单词,我的程序的其余部分不能按预期工作。
尝试concate,而不是覆盖它 – upog
您是刚开始的最后一个字外循环读取。在内部循环中,单词被打印在不同的迭代上。您应该将它们添加到列表中,或通过连接它们来创建一个'StringBuilder'。 –