文档章节

JAVA基础----java中E,T,?的区别?

文文1
 文文1
发布于 2015/10/19 10:57
字数 425
阅读 811
收藏 9

阿里云携手百名商业领袖、技术大咖,带您一探行进中的数字新基建!>>>

遇到<A>,<B>,<K,V>等,是用到了java中的泛型。 

一般使用<T>来声明类型持有者名称,自定义泛型类时,类持有者名称可以使用T(Type) 

如果是容器的元素可以使用E(Element),若键值匹配可以用K(Key)和V(Value)等, 

若是<?>,则是默认是允许Object及其下的子类,也就是java的所有对象了。 

所以说,如果是字每A,B,C,D...定义的,就是泛型,这里T只是名字上的意义而已T---type,E----Element 

K----key, V----value 

如果是?定义的,就是普通的Object或者其子类 

举例说明: 

Set<T> 表示 集合里 是   T类的实例 

List<E> 表示  集合里 是  E类的实例 

List<?> 表示 集合里的对象类型不确定,未指定 

List 同 List<?> 是一样的。 


泛型的作用: (避免类型强转)

1、用泛型:

List<T> list=new ArrayList<T>();
T t=list.get(0);

2、不用泛型: 

List  list=new ArrayList();
T t=(T)list.get(0);


总结: 

a、用泛型只是确定了集合内的元素的类型,但却是在编译时确定了元素的类型再取出来时已经不再需要强转, 

增强程序可读性,稳定性和效率 

b、不用泛型时,如果是装入集合操作,那么元素都被当做Object对待,失去自己的类型,那么从集合中取出来时, 

往往需要转型,效率低,容易产生错误 

说穿了,其实A、B、E、T等都是一会事情,只是便于人理解吧,对编译器毫无影响。

本文转载自网络

文文1
粉丝 26
博文 513
码字总数 158580
作品 0
长沙
程序员
私信 提问
加载中

评论(0)

java基础重点讲解,看了还不会找我(四)

###04.01Java语言基础(循环结构概述和for语句的格式及其使用) A:循环结构的分类 for,while,do...while B:循环结构for语句的格式: for(初始化表达式;条件表达式;循环后的操作表达式) { 循环体...

谢小芳是女神
2018/12/30
0
0
二.JAVA中的一些零碎知识点

面向对象基础: 类的第四个成员:代码块 基础-函数-静态方法、非静态方法、静态成员、非静态成员与多线程 成员变量和局部变量的区别 JVM内存结构——堆、栈、方法区 Java中必须了解的常用类 ...

osc_3www0d3o
2018/07/18
2
0
JAVA基础入门(JDK、eclipse下载安装)

最近打算从基础复习下,去年这个时间开始学习的,感觉好多都忘记了(自己记忆不深刻,容易忘事) 都是自己理解,如果有错误欢迎指正! 09年Sun公司被Oracle公司收购 javaSE:基础核心,程序开...

osc_8i32hj13
2019/07/03
2
0
Java核心(一):JDK和JRE、PATH和CLASSPATH的区别

一、JDK和JRE的区别 1 、JDK中,各个文件目录的作用: bin目录:存放JDK用于开发的一些终端命令工具。 常见的工具如:“javac”的作用是将java源文件编译为class文件(即字解码文件); “jav...

osc_ypm51igr
2019/02/21
6
0
Java自学路线图之Java基础自学

自学Java要从Java基础语法开始自学,自学Java的过程中打好基础是很重要的!首先自学:面向对象基础,API基础,集合基础。这些对Java小白的数学和英语能力的要求门槛不高,在学习的过程中积累...

osc_6b6pwh7r
03/15
19
0

没有更多内容

加载失败,请刷新页面

加载更多

假使年轻的时候鞭策自己

我自己就是浪费了很多时间的一个人。我不打麻将,我不经常的听戏看电影,几年中难得一次,我不长时间看电视,通常只看半个小时,我也不串门子闲聊天。有人问我:“那么你大部分时间都做了些什...

瑾123
5分钟前
7
0
文章错别字检测软件有哪些?蚁小二真的好用

文章错别字检测软件有哪些?蚁小二真的好用,据市场研究调查发现,我们对文章当中错别字的检测和修改这样的需求是一直存在的,只是市场上面还没有一个比较好用的软件来辅助我们做错别字检测。...

一键分发工具-蚁小二
8分钟前
12
0
文章原创度检测工具有哪些?这些工具你可以拥有

文章原创度检测工具有哪些?这些工具你可以拥有,随着自媒体行业的发展,现在很多自媒体人都进入到互联网行业,但是随着大家的深入发展,会发现有时候自己的文章在自媒体平台上推荐很少,其实...

易撰
9分钟前
9
0
FTP工具软件,FTP工具软件下载!

IIS7服务器管理工具是一款FTP的客户端软件,能够批量执行FTP的命令!可以提高FTP的传输效率! 同时,它也可以作为VNC的客户端,能够进行相关的VNC操作;同时,它还可以批量连接Windows和Lin...

Raymond13
9分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部