我有一個任務,需要我從input.txt文件中取詞並按頻率對它們進行排序,然後將它們寫入output.txt文件。刪除字符串數組中的重複單詞並寫入輸出文件
我遇到的問題是,一旦我找到輸入文件中每個單詞的頻率,我不知道如何刪除重複項以及如何防止它們寫入輸出文件。
我有一個任務,需要我從input.txt文件中取詞並按頻率對它們進行排序,然後將它們寫入output.txt文件。刪除字符串數組中的重複單詞並寫入輸出文件
我遇到的問題是,一旦我找到輸入文件中每個單詞的頻率,我不知道如何刪除重複項以及如何防止它們寫入輸出文件。
考慮到,當你的內部'j'循環結束時,你的外部'i'循環可能繼續在下一個出現的相同的字。這就是爲什麼你看到多次輸出相同的單詞,每次計數減少一次。
當'j'循環結束時,您可以通過將'i'設置爲'j'來獲得更近的距離。或者,考慮消除'j'循環,並將令牌[i]與令牌[i-1]進行比較。
之後,你仍然不會按字頻排序輸出。但你不想讓我們做你的功課。
我建議使用Eclipse之類的Java IDE,並學習如何使用Java調試器。
這裏是我將使用的邏輯:
Map<StringVal,int> strCount = new HashMap<StringVal,int>();
有了這個邏輯,你可以實現你正在尋找的。
將每個單詞用作散列映射中的一個鍵每次出現一個新鍵或遞增整數。一旦完成循環通過中的每一個鍵...
爲什麼你把字符串放入一個StringBuilder只是爲了拆分它們,而不是僅僅使用ArrayList或類似的東西? – Xymostech 2013-04-27 02:10:36
我的教授希望我們使用StringBuilder。我也想做一個ArrayList以及 – dmetal23 2013-04-27 02:21:41