ArrayList与Arrays.asList()返回的列表

ArrayList与Arrays.asList()返回的列表,第1张

ArrayList与Arrays.asList()返回的列表

当您调用Arrays.asList时,它不会返回

java.util.ArrayList
。它返回一个
java.util.Arrays$ArrayList
由原始源数组支持的固定大小列表。换句话说,它是使用Java的基于集合的API公开的数组的视图。

    String[] sourceArr = {"A", "B", "C"};    List<String> list = Arrays.asList(sourceArr);    System.out.println(list); // [A, B, C]    sourceArr[2] = ""; // changing source array changes the exposed view List    System.out.println(list); //[A, B, ]    list.set(0, "Z"); // Setting an element within the size of the source array    System.out.println(Arrays.toString(sourceArr)); //[Z, B, ]    list.set(3, "Z"); // java.lang.ArrayIndexOutOfBoundsException    System.out.println(Arrays.toString(sourceArr));    list.add("X"); //java.lang.UnsupportedOperationException    list.remove("Z"); //java.lang.UnsupportedOperationException

您不能向其中添加元素,也不能从中删除元素。如果您尝试从中添加或删除元素,您将获得

UnsupportedOperationException



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5427051.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存