经常用到,有时候不只是简单的基本类型,那种可以用set集合去重,好多时间用到的是我们自定义的类型,下面举个例子(我这儿就那int举例了):
方法一、 这种类似与选择排序算法,首先我们取i值,然后将i之后的所有重复的去掉。具体实现如下:
- import java.util.List;
- import java.util.concurrent.CopyOnWriteArrayList;
-
-
-
-
-
-
-
-
- public class ArrayRemoveRepeat {
-
-
-
-
- public static void main(String[] args) {
-
- System.out.println("之前的数组");
- Integer[] src = { 4, 2, 4, 6, 1, 2, 4, 7, 8 };
- for (Integer k : src) {
- System.out.print(k + ",");
- }
-
- List<Integer> list = new CopyOnWriteArrayList<Integer>(src);
-
-
- int i = 0;
- while (i < list.size() - 1) {
-
- int j = i+1;
- while (j < list.size()) {
- if (list.get(i) == list.get(j)) {
- list.remove(j);
- j--;
- }
- j++;
- }
-
-
- i++;
- }
-
- src = list.toArray(new Integer[list.size()]);
- System.out.println("\n之后的数组");
- for (Integer k : src) {
- System.out.print(k + ",");
- }
- }
- }
运行如下:
之前的数组
4,2,4,6,1,2,4,7,8,
之后的数组
4,2,6,1,7,8,