Java中Set类初始化问题有哪些?

 我来答
百度网友0adf2dfc62
推荐于2019-09-05 · TA获得超过578个赞
知道小有建树答主
回答量:553
采纳率:50%
帮助的人:216万
展开全部
没有第一种方式,Set是个接口,是不能够实例化(new)的,你只能实例化它的实现类,HashSet就是Set的一个实现类。
第二种方式你也可以给它加<String>,这叫泛型,就是限制这个类里只能传你指定的类型及其子类。
由于Java所有对象的类是Object类,所以如果不写就默认是Object类,所有类的最顶级父类都是Object,所以传什么都可以,
Set setTmp = new HashSet();和Set<Object> setTmp = new HashSet<Object>();两种方式是等价的。
Java有八种基本数据类型,是不属于Object类的子类的,byte, short, int,long,char,double,float,boolean,对这八种类有他们各自的包装类,依次是Byte,Short,Integer,Long,Character,Double,Float,Boolean,这八个包装类是Object的子类,是可以作为Set的类型用的,也就是你可以写成Set<Integer> 但是不能写成Set<int>.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式