如何从泛型类型数组中删除所有空值?

时间:2017-01-27 04:29:59

标签: java arrays generics

我有一个名为ArraySort的类,它通常是

类型
public class ArraySort<E> {
    public void bubbleSort(E[] data) {...}
}

在启动时接受一种类型

ArraySort<Integer> ArraySort = new ArraySort<Integer>();

这个类支持不同的排序算法,但每当输入一个数组为空值的

int[] arr = {3, 1, 5, null};
ArraySort.bubbleSort(arr);

我的代码错误,出现空指针异常。我已经尝试使用this thread中的方法,但由于“java.lang.ArrayStoreException&#39;”而无法正常工作。

public E[] clean(E[] v) {
    ArrayList<E> list = new ArrayList<E>(Arrays.asList(v));
    list.removeAll(Collections.singleton(null));
    return (E[]) list.toArray(new String[list.size()]);
}

所以我的问题是如何从一般类型的数组中删除所有空值?

0 个答案:

没有答案