我正在寻找一种方法来“自动化”所有需要的转换,以使 List 操作可用于普通数组。问题是
public static Object[] arrayRemoveAll(Object[] oA, Object[] removeA) {
List<Object> l = new ArrayList<Object>(Arrays.asList(oA));
l.removeAll(Arrays.asList(removeA));
return l.toArray(new Object[l.size()]);
}
当我尝试将对象转换回其原始数组类型时(例如,如果我调用 (String[])arrayRemoveAll(strA, strA2)),总是给我 ClassCastException。
我理解为什么会发生这种情况,但是有什么巧妙的方法可以规避这种情况吗?我希望能够为一些标准的 List 操作使用通用功能。
提前非常感谢。