我正在编写一个读取 .txt 文件并将每个单词存储到数组中的程序。到目前为止我有这个。它存储好...
BufferedReader fr = new BufferedReader(new FileReader(file));
ArrayList<String> words = new ArrayList<String>(50);
String[] line;
String str;
while((str=fr.readLine()) != null)
{
line = str.split("(?s)\\s+");
for(String word : line)
words.add(word);
}
if(words.size() > 49){
System.out.println("To many words in file.");
System.exit(1);
}
for(String word : words){
if(word.length() > 12){
}
}
// Printing the content of words
for(String word : words)
System.out.println("sting entry:" + word);
}
但它存储太多。当我使用:
for(String word : words)
System.out.println("sting entry:" + word);
检查并查看所有存储的内容,结果如下:
sting entry:it's
sting entry:yes-man
sting entry:murdered
sting entry:ok
sting entry:
sting entry:Hello
sting entry:Friend
这很好,除了它将返回值作为一个单词读取并将其存储在数组中。我该如何防止这种情况?
另外,当我在它的时候......如果你注意到我的代码中有一些随机代码:
for(String word : words){
if(word.length() > 12){
}
}
我想让它ArrayList
也不会存储超过 12 个字符的字符串值。我该如何实现呢?非常感谢。