如何将List集合去重

众所周知List集合中的元素是有序的,但是List中的元素同样是可以重复的,那么我们应该怎么在List集合中去重呢?

方法一:

对于方法一而言,这也许是一个小窍门。利用的是Set集合中不允许出现重复的元素。

废话也不多说,请看代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

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集合去重的第二种方法而言,其实想法比较简单也是正常思路,请继续看代码:

     

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

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());    

      

}

}

猜你喜欢

转载自blog.csdn.net/qq_41889087/article/details/82623064