prader6

List<? extends > list1 和 List<? super > list2

  刚才看了一些博文,这里说一下自己的理解。

  List <? extends T>   list1 这个基本意思是  所有参数类型是T 子类的list 都能直接赋值给list1.但是由于 list1没有指定自己具体是哪个元素,所以不能直接使用add 方法。之只能通过get 方法取list中,赋值给list1 之前已经有的元素。

List<? super T> list2    能把所有参数类型是T的父类的list 直接赋值给list2, 由于已经确定了这个list2最小的边界就是T ,所以这个list2 在赋值之后还能放T或者T的子类。list2 取值的时候,因为不知道元素是T的哪一个父类,所以取出来的元素只能是object 类型的。

参考文章:https://www.cnblogs.com/chenxibobo/p/9655236.html

                 https://www.cnblogs.com/drizzlewithwind/p/6100164.html

   谢谢以上博主

 

posted on   prader6  阅读(481)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)

导航

统计

点击右上角即可分享
微信分享提示