[英]Printing from an ArrayList
我正在接收一個文本文件,並將每個單詞存儲在arraylist中。 但是問題是,當我遍歷arraylist並打印內容時,單詞會出現很多次,不一定以正確的順序出現。 這是下面的代碼片段:
public static void main(String args[])
{
try
{
ArrayList storeWord = new ArrayList();
Scanner scannerWord = new Scanner(new File("word"));
while(scannerWord.hasNext()) {
String word = scannerWord.next();{
storeWord.add(word);
Iterator itr = storeWord.iterator();
while(itr.hasNext())
System.out.println(itr.next());
}
有誰知道這個問題可能是什么以及如何解決? 謝謝。
嘗試這個
public static void main(String args[]) {
ArrayList storeWord = new ArrayList();
Scanner scannerWord = new Scanner(new File("word"));
while(scannerWord.hasNext()) {
storeWord.add(scannerWord.next());
}
Iterator itr = storeWord.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
}
您的“打印”循環嵌套在您的“讀取”循環中。
您將在每次讀取時打印出整個列表。 這可能就是每個單詞被多次顯示的原因。
你可能想要:
Scanner scannerWord = new Scanner(new File("word"));
while(scannerWord.hasNext()) {
String word = scannerWord.next();{
storeWord.add(word);
}
Iterator itr = storeWord.iterator();
while(itr.hasNext())
System.out.println(itr.next());
您需要從原始的while循環中取出迭代器並打印while循環
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.