189 8069 5689

Java类型通配符应用举例分析

本篇内容主要讲解“Java类型通配符应用举例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java类型通配符应用举例分析”吧!

成都创新互联公司-专业网站定制、快速模板网站建设、高性价比东兴网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式东兴网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖东兴地区。费用合理售后完善,10多年实体公司更值得信赖。

一 点睛

List对象不能被当成List对象使用,也就是说:List类并不是List类的子类。

数组和泛型有所不同:假设Foo是Bar的一个子类型(子类或者子接口),那么Foo[]依然是Bar[]的子类型;但G不是G的子类型。

为了表示各种泛型List的父类,我们需要使用类型通配符,类型通配符是一个问号(?),将一个问号作为类型实参传给List集合,写作:List(意思是未知类型元素的List)。这个问号(?)被称为通配符,它的元素类型可以匹配任何类型。

二 泛型的优良设计

1 代码

import java.util.*;public class ArrayErr{  public static void main(String[] args)  {   // 定义一个Integer数组   Integer[] ia = new Integer[5];   // 可以把一个Integer[]数组赋给Number[]变量   Number[] na = ia;   // A 处   // 下面代码编译正常,但运行时会引发ArrayStoreException异常   // 因为0.5并不是Integer   na[0] = 0.5;  // B 处   List iList = new ArrayList<>();   // 下面代码导致编译错误   //List nList = iList; // C 处  }}

2 运行

Exception in thread "main" java.lang.ArrayStoreException: java.lang.Double at ArrayErr.main(ArrayErr.java:23)

3 说明

A处的代码不会引起编译错误,但会在B处引发运行错误。

B出的代码直接引起编译错误。

这正是数组和泛型的区别,泛型的设计由于数组,能及早发现错误而不是到运行时才发现。

三 实战——使用类型通配符

1 代码

import java.util.*;public class ArrayErr{  public static void main(String[] args)  {   List c = new ArrayList();   c.add("第一个");   c.add("第二个");   test(c);   // 下面这种用法是错误的,这种类型通配不能加元素   List wrongList = new ArrayList();   //wrongList.add(new Object());  }  // 这种问号类型通配符表示各种泛型的父类,它的元素类型可以匹配任意类型,可以用到遍历中  public static void test(List c)  {   for(int i=0;i

2 运行

第一个第二个

3 说明

类型通配符可用于遍历场景,不可用于添加场景。

到此,相信大家对“Java类型通配符应用举例分析”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


本文名称:Java类型通配符应用举例分析
标题路径:http://cdxtjz.cn/article/jisdoc.html

联系我们

您好HELLO!
感谢您来到成都网站建设公司,若您有合作意向,请您为我们留言或使用以下方式联系我们, 我们将尽快给你回复,并为您提供真诚的设计服务,谢谢。
  • 电话:028- 86922220 18980695689
  • 商务合作邮箱:631063699@qq.com
  • 合作QQ: 532337155
  • 成都网站设计地址:成都市青羊区锣锅巷31号五金站写字楼6楼

小谭建站工作室

成都小谭网站建设公司拥有多年以上互联网从业经验的团队,始终保持务实的风格,以"帮助客户成功"为已任,专注于提供对客户有价值的服务。 我们已为众企业及上市公司提供专业的网站建设服务。我们不只是一家网站建设的网络公司;我们对营销、技术、管理都有自己独特见解,小谭建站采取“创意+综合+营销”一体化的方式为您提供更专业的服务!

小谭观点

相对传统的成都网站建设公司而言,小谭是互联网中的网站品牌策划,我们精于企业品牌与互联网相结合的整体战略服务。
我们始终认为,网站必须注入企业基因,真正使网站成为企业vi的一部分,让整个网站品牌策划体系变的深入而持久。