眾所周知List集合中的元素是有序的,但是List中的元素同樣是可以重復的,那么我們應該怎么在List集合中去重呢?
方法一:
對於方法一而言,這也許是一個小竅門。利用的是Set集合中不允許出現重復的元素。
廢話也不多說,請看代碼:
package com.yonyou.test; import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.Vector; /** * 測試類 * @author 小浩 * @創建日期 2015-3-2 */ public class Test{ public static void main(String[] args) { List<String> vector=new Vector<String>(); //這里的vector可以換成ArrayList或者LinkedList,效果都一樣 vector.add("Hello"); vector.add("world"); vector.add("Hello"); System.out.println("去重之前vector中的集合為:"+vector.toString()); Set<String> set=new HashSet<String>(vector); vector=new Vector<String>(set); System.out.println("去重之后vector中的集合為:"+vector.toString()); } }
方法二:
對於List集合去重的第二種方法而言,其實想法比較簡單也是正常思路,請繼續看代碼:
package com.yonyou.test; import java.util.List; import java.util.Vector; /** * 測試類 * @author 小浩 * @創建日期 2015-3-2 */ public class Test{ public static void main(String[] args) { List<String> vector=new Vector<String>(); vector.add("Hello"); vector.add("world"); vector.add("Hello"); System.out.println("去重之前vector中的集合為:"+vector.toString()); List<String> newVector=new Vector<String>(); for(String str:vector) { if(!newVector.contains(str)) newVector.add(str); } System.out.println("去重之后vector中的集合為:"+newVector.toString()); } }
好吧,今天就先到這里吧~