Max*_*ace 3 java collections primitive wrapper
有人可能解释为什么以下:
Integer[] arr1 = {1,2,3,4,5};
Collection<?> numbers = Arrays.asList(new Integer[]{1,2,3});
System.out.println(Arrays.asList(arr1).containsAll(numbers));
Run Code Online (Sandbox Code Playgroud)
打印"true",而如果我们像这样交换Integer:
int[] arr2 = {1,2,3,4,5};
Collection<?> numbers2 = Arrays.asList(new int[]{1,2,3});
System.out.println(Arrays.asList(arr2).containsAll(numbers2));
Run Code Online (Sandbox Code Playgroud)
打印"假"?
在第二种情况下,每个列表由单个元素组成.这两个元素都是int []数组.包含较大数组的列表不包含包含较小数组的列表的成员.
Arrays.asList()方法接受类型为T的参数的变量参数列表,并返回一个List<T>.使用整数数组,T可以是Integer,返回类型为List.但是对于原始数组,T不能是int,因为不能有List<int>.
| 归档时间: |
|
| 查看次数: |
487 次 |
| 最近记录: |