You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Arrays.asList()方法返回对象的真实类型是什么?

Arrays.asList() 返回对象的实际类型解析

Arrays.asList()方法虽然对外声明返回List<T>接口类型,但它实际返回的是java.util.Arrays类内部的私有静态嵌套类java.util.Arrays$ArrayList——注意这个类和我们日常使用的java.util.ArrayList并非同一个,只是类名相同。

你可以通过代码直接验证它的实际类型:

List<Integer> list = Arrays.asList(1, 2, 3, 4);
// 打印对象的实际类名
System.out.println(list.getClass().getName());
// 输出结果:java.util.Arrays$ArrayList

这个内部实现类有个关键特性:它是基于传入的数组直接包装而成的,集合大小固定,不支持add()、remove()这类会改变集合长度的操作,调用这些方法会抛出UnsupportedOperationException。而我们平时用new ArrayList<>()创建的java.util.ArrayList是动态扩容的,支持所有List接口定义的修改操作。

内容的提问来源于stack exchange,提问作者jachai.sotaro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 15:12:02