1.利用HashSet(不保證元素順序一致)
HashSet不會存在相同的元素,可以利用這一點去除List中的重復元素
List<String> beforeList = new ArrayList<String>(); beforeList.add("sun"); beforeList.add("star"); beforeList.add("moon"); beforeList.add("earth"); beforeList.add("sun"); beforeList.add("earth"); Set<String> middleHashSet = new HashSet<String>(beforeList); List<String> afterHashSetList = new ArrayList<String>(middleHashSet); System.out.println(beforeList); System.out.println(afterHashSetList);
但是HashSet不保證順序,如果要按照原來的順序,用第二種方法
2.利用LinkedHashSet (去重后順序一致)
List<String> beforeList = new ArrayList<String>(); beforeList.add("sun"); beforeList.add("star"); beforeList.add("moon"); beforeList.add("earth"); beforeList.add("sun"); beforeList.add("earth"); Set<String> middleLinkedHashSet = new LinkedHashSet<String>(beforeList); List<String> afterHashSetList = new ArrayList<String>(middleLinkedHashSet); System.out.println(beforeList); System.out.println(afterHashSetList);
去重后元素順序不變