paulwong

          刪除List中重復元素

          方法一:循環元素刪除
          // 刪除ArrayList中重復元素 
              public static void removeDuplicate(List list) {
                  for (int i = 0; i < list.size() - 1; i++) {
                      for (int j = list.size() - 1; j > i; j--) {
                          if (list.get(j).equals(list.get(i))) {
                              list.remove(j);
                          }
                      }
                  }
                  System.out.println(list);
              }


          方法二:通過HashSet剔除
          // 刪除ArrayList中重復元素 
              public static void removeDuplicate(List list) {
                  Set set = new HashSet(list);
                  list.clear();
                  list.addAll(set);
                  System.out.println(list);
              }


          方法三: 刪除ArrayList中重復元素,保持順序
          // 刪除ArrayList中重復元素,保持順序 
              public static void removeDuplicateWithOrder(List list) {
                  Set set = new HashSet();
                  List newList = new ArrayList();
                  for (Iterator iter = list.iterator(); iter.hasNext();) {
                      Object element = iter.next();
                      if (set.add(element))
                          newList.add(element);
                  }
                  list.clear();
                  list.addAll(newList);
                  System.out.println(" remove duplicate " + list);
              }

          posted on 2014-08-18 12:09 paulwong 閱讀(1873) 評論(0)  編輯  收藏 所屬分類: J2SE

          主站蜘蛛池模板: 乾安县| 黄大仙区| 沂南县| 石嘴山市| 连城县| 洛浦县| 鱼台县| 永城市| 璧山县| 镇宁| 花莲县| 通榆县| 江阴市| 龙岩市| 星子县| 崇明县| 泰宁县| 枞阳县| 张北县| 西盟| 新源县| 海原县| 涿州市| 临颍县| 建宁县| 环江| 寿宁县| 芷江| 蕉岭县| 称多县| 讷河市| 通城县| 班戈县| 锡林浩特市| 四子王旗| 榆树市| 宝丰县| 噶尔县| 新巴尔虎左旗| 简阳市| 冕宁县|