我們知道在 Java 的 List 中是允許對象或者元素是重複的。
不允許重複的集合,我們可以使用 set。
在有時候,我們希望 List 集合中的內容是不重複的,所以我們需要對 List 進行一次去重。
使用 Guava
其實有多個辦法來去重,相對簡單實用點的可以使用 Guava。
使用下面的這句話就可以了:
List<String> townsName = FileUtils.readLines(new File("C:\\Users\\yhu\\Documents\\town\\us-ma.txt"));
logger.debug("Town Count - [{}]",townsName.size());
townsName = Lists.newArrayList(Sets.newHashSet(townsName));
logger.debug("Town Count Clean - [{}]",townsName.size());
上面代碼就是簡單的把 List 設到 HashSet 中,然後再轉換爲 List。
上面的內容爲測試的問題,第一步是使用 FileUtils 將文本中的內容讀取到 List 列表中。