java泛型 通配符详解及实践
对于泛型的原理和基础,可以参考笔者的上一篇文章java泛型,你想知道的一切 一个问题代码 观察以下代码 : public static void main(String[] args) { // 编译报错 // required ArrayList<Integer>, found ArrayList<Number> ArrayList<Integer> list1 = new ArrayList<>(); ArrayList<Number> list2 = list1; // 可以正常通过编译,正常使用 Integer[] arr1 = new Integer[]{1, 2}; Number[] arr2 = arr1; } 上述代码中,在调用print函数时,产生了编译错误 required ArrayList<Integer>, found ArrayList<Number>,说需要的是ArrayList<Integer>类型,找到的却是ArrayList<Number>类型...