当前位置: 首页 > news >正文

邯郸专业做网站哪里有关键词在线听免费

邯郸专业做网站哪里有,关键词在线听免费,微信怎么做网站,福田企业网站推广公司目录 泛型的引入 泛型 泛型 泛型类 泛型的上界 泛型的引入 之前学习的数组里面是存放着整型或者自字符串中一种的数组,如果想要在一个数组里面放多种类型数据,我们该怎么去做呢?Object类或许是一个好的解决方法,因为Object类…

目录

泛型的引入

泛型

泛型

泛型类

泛型的上界


泛型的引入

之前学习的数组里面是存放着整型或者自字符串中一种的数组,如果想要在一个数组里面放多种类型数据,我们该怎么去做呢?Object类或许是一个好的解决方法,因为Object类是所有类的父类,这样我们可以通过创建一个Object类的数组类解决这个问题。

class MyArray{public Object[] array = new Object[10];//创建一个Object类数组public Object getPos(int pos){return this.array[pos];}//返回对应位置的数据public void setVal(int pos, Object val){this.array[pos] = val;}//在对应的位置里存放数据}
public static void main(String[] args) {MyArray myArray = new MyArray();myArray.setVal(0,10);myArray.setVal(1,"hello");//String ret = myArray.getPos(1);//这里需要强转才能为ret赋值String ret = String.valueOf(myArray.getPos(1));System.out.println(ret);
}

虽然其中所有类型的数据都可以存放,但不难看出,这样的做法会出现以下不便的情况:

  1. 不同类型的数据需要强转才能输出
  2. 排序不够整齐,需要记录每个位置放着什么类型的数据

泛型

泛型

虽然当前所有类型的数据都可以存放到其中,但我们更却趋向于让数组内放一种类型的数据

所以,泛型的主要目的:就是指定当前的容器,要持有什么类型的对象。让编译器去做检查。此时,就需要把类型,作为参数传递。需要什么类型,就传入什么类型。

泛型的语法格式为:

class 泛型类名称<类型形参列表> {

         // 这里可以使用类型参数

}

class 泛型类名称<类型形参列表> extends 继承类/* 这里可以使用类型参数 */ {

           // 这里可以使用类型参数

}

 在了解泛型的语法格式后,我们可以尝试把上面的Object类数组进行改写。

class MyArray<T>{public Object[] array = new Object[10];public T getPos(int pos){return (T)this.array[pos];}public void setVal(int pos, T val){this.array[pos] = val;}
}public class Test {public static void main(String[] args) {MyArray<Integer> myArray = new MyArray<>();myArray.setVal(0,10);myArray.setVal(1,19);int ret = myArray.getPos(0);System.out.println(ret);//myArray.setVal(2,"not");//不再成立,自动进行类型检查}//对于不同类型的数据,我们可以采用实例化不同的对象来实现MyArray<String> myArray1 = new MyArray<>();myArray1.setVal(2, "not");String ret1 = myArray1.getPos(2);System.out.println(ret1);}

类名后的<T>代表占位符,表示当前类是一个泛型类。

这里我们可以发现,int ret = myArray.getPos(0);中不需要进行类型的强制转换,因为输出的一定是整型数据。

泛型类

泛型类的语法格式为:

泛型类<类型实参> 变量名; // 定义一个泛型类引用

new 泛型类<类型实参>(构造方法实参); // 实例化一个泛型类对象

MyArray<Integer> list = new MyArray<Integer>();

泛型只能接受类,所有的基本数据类型必须使用包装类。

如果编译器可以通过上下文推导出数据类型时,我们可以省略后面的类型书写:

MyArray<Integer> list = new MyArray<>();

泛型的上界

泛型的上界的语法格式为:

class 泛型类名称<类型形参 extends 类型边界> {

...

}

public class MyArray {...  
}

 只接受 Number 的子类型作为 E 的类型实参

http://www.yidumall.com/news/78048.html

相关文章:

  • 杭州网站建设浙江交换友情链接的目的
  • 如何介绍设计的网站站内seo是什么意思
  • 计划网站搭建网络稿件投稿平台
  • 找方案的网站百度的网址是多少
  • 做网站封面要怎么做最新新闻播报
  • 建网站公司电商网站模板
  • 网站每日签到怎么做2024年新冠第三波症状分析
  • 列举电子商务网站建设需要的语言惠州seo网站排名
  • asp动态网站开发视频荥阳网站优化公司
  • 网站浏览成交指标市场营销培训
  • 内网建设网站晋城网站seo
  • HTML精简新闻网站开发优化关键词排名的工具
  • 网站建设图片大小品牌策划方案怎么写
  • 兼职做商务标哪个网站seo专员是干什么的
  • 网站定制公司推荐苏州关键词优化seo
  • 广州公司网站开发网店推广联盟
  • 东莞 营销网站建设2022当下社会热点话题
  • 自己做装修网站需要多少钱营销策划公司收费明细
  • 北京微信网站制作费用营销网站建设哪家好
  • 直销返利网站开发谷歌seo搜索引擎下载
  • 说说网站是怎样建设和推广的线上宣传的方式
  • 更换网站域名 推广百度一下百度官方网
  • 台湾做系统集成的公司网站如何设计一个网站页面
  • 如何将自己做的网站放到网上服务之家网站推广公司
  • wordpress多用户商城系统百度seo排名优化提高流量
  • 自己做网站卖什么好南宁关键词优化公司
  • 南昌建站价格百度关键词价格
  • 网站联系我们 怎么做地图上海网站搜索引擎优化
  • 世界各国o2o响应式网站推广app赚佣金平台
  • 创意集团网站建设时事政治2023最新热点事件