技术大神|大知识,如何合理的使用list、你学会了吗?,小代码
【技术大神|大知识,如何合理的使用list、你学会了吗?,小代码】类型统配符-1有如下例子:voidprintList(List1){for(0bjecto:1){System.out.println(o);.}}.上面代码中的问号是一个类型通配符 。 它读作“问号” 。 List是任何泛型List的父类型 , 所以可以将List<0bject>、List或List>>传递给printList() 。 引入了类型通配符 , 这让您可以声明List类型的变量 。 您可以对这样的List做什么呢?非常方便 , 可以从中检索元素 , 但是不能添加元素 。 原因不是编译器知道哪些方法修改列表哪些方法不修改列表 , 而是(大多数)变化的方法比不变化的方法需要更多的类型信息 。
类型统配符-2下面的代码则工作得很好:Listli=newArrayList():li.add(newInteger(42));Listlu=li;System.out.println(1u.get(0));为什么该代码能工作呢?对于lu,编译器一点都不知道List的类型参数的值 。 但 , 是编译器比较聪明 , 它可以做一些类型推理 。 在本例中 , 它推断未知的类型参数必须扩展Object 。 (这个特定的推理没有太大的跳跃 , 但是编译器可以作出一些非常令人佩服的类型推理 , 所以它让您调用List.get()并推断返回类型为0bject 。
文章图片
- 「小米科技」小米11Pro宣布新技术!首发骁龙875+屏下镜头,米粉:价格有点小贵
- 金牌娱乐|月入十万左右,扣税额就高达两万,网红大神啊段晒收入
- 潮黑社|屏下指纹技术虽不再是难题,但市场却已无法挽回,LCD再获突破
- 科学技术宅六六|花了一亿的一加,为何效果比花两亿的华为好?,同样定制屏幕
- 西安发布|打破国外技术垄断,陕鼓自主研发全球最大轴流压缩机
- 「硬盘」互联网可能在三年内被IPFS技术彻底颠覆
- 「太空」令你瞠目结舌的科学知识
- 小毛羊|除甲醛加盟到底靠不靠谱?为什么那么多人都入坑了?我们整理的除甲醛技术内容包括:
- ZAKER生活|揭秘显微镜下沼泽的爱恨情仇,大神探索《我的世界》隐秘的角落
- [恐龙]科学家为什么不用克隆技术让恐龙复活?恐龙复活的3个条件很难实现