package cn.utils;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ArrayUtils {
public static <T> T[] distinct(T[] array) {
// 将数组中的元素循环遍历,放入集合中,并且去重
List<T> list = new ArrayList<>();
for (int i = 0; i < array.length; i++) {
if (!list.contains(array[i])) {
list.add(array[i]);
}
}
// 将去重后的list集合转换为数组,并且返回(如果有重复,数组的长度会减少,需要重新定义一个数组)
T[] newInstance = (T[]) Array.newInstance(array[0].getClass(), list.size());
T[] result = list.toArray(newInstance);
return result;
}
}
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class ArrayUtils {
public static <T> T[] distinct(T[] array) {
// 将数组中的元素循环遍历,放入集合中,并且去重
List<T> list = new ArrayList<>();
for (int i = 0; i < array.length; i++) {
if (!list.contains(array[i])) {
list.add(array[i]);
}
}
// 将去重后的list集合转换为数组,并且返回(如果有重复,数组的长度会减少,需要重新定义一个数组)
T[] newInstance = (T[]) Array.newInstance(array[0].getClass(), list.size());
T[] result = list.toArray(newInstance);
return result;
}
}