-
数组转的list 不能够增/删,只能够修改。因为数组转的list表面看是list,其实不是平时所使用的那个list,而是一个内部类list,这个list是装饰器模式,内部保存的仍然是数组,对于数组当然不能增/删了。
-
List<?> 不能够add任何对象,除了null。因为?可以是任何类型,编译器不知道具体是什么类型,所以任何和?类型相关的操作都不允许。
- List<? extends 某个类C>
-
不能够add任何对象,除了null。因为里面可以存放 C及其子类,最小粒度不确定,比如到底放的是猫呢还是狗不确定,所以无法添加。
- 可以查询里面的元素,因为里面的元素都可以转化为C,都是C的子类 。
-
- List<? super C>
- 可以添加元素,可以添加 C 元素。因为里面存放的是 C 及其父类,最小粒度是 C 。
- 获取的时候不知道元素的类型,因为里面的元素有的是C的父类,父类和子类的共同粒度就是Object,所以获取的都是 Object。
每日心得--list的使用
最新推荐文章于 2022-01-23 14:19:59 发布