java Arrays JavaF#
程序员文章站
2024-02-02 19:39:40
...
import java.util.Arrays; import java.util.List; public class Tees { public static void main(String[] args) { Integer[] a = { 1, 2 }; List<Integer> ll = Arrays.asList(a); String[] array = { "Good", "Morning", "Hello", "2006" }; List<String> list = Arrays.asList(array); int[] i = { 1, 2 }; List<int[]> f = Arrays.asList(i); System.err.println(f.size()); } }
int[] i = { 1, 2 }; List<int[]> f = Arrays.asList(i); System.err.println(f.size());
奇怪的是Arrays 对于int这样的数组 并不是跟其它包装类或者非基础类型数组一样 直接转成对应的list,而是将其整体作为list的一项 构成一个长度为1的list
补充点特别的。关于
Integer [] a = {1,2,3,5,6}; List<Integer> l = Arrays.asList(a); l.add(22); System.out.println(l);
根据java核心的解释,asList返回的其实不是一个List,而是一个视图对象,带有访问底层的get set方法,但是若改变数组的大小的所有方法(例如与迭代器iterator相关的add和remove方法)都会抛出一个java.lang.UnsupportedOperationException。这点尤为重要
上一篇: 云计算的安全性能七宗“罪”