在Java中,HashSet <integer> = new HashSet(2)和HashSet <integer> = new HashSet <integer>(2)?</integer> </integer> </integer>之间有什么区别?

时间:2014-04-15 01:28:08

标签: java syntax types casting initialization

使用

初始化之间是否有任何区别?
HashSet<Integer> s = new HashSet(2) 

HashSet<Integer> s = new HashSet<Integer>(2)

2 个答案:

答案 0 :(得分:2)

唯一的区别是第一个会给你一个编译器警告原始类型&#39; HashSet&#39;。

答案 1 :(得分:1)

有趣的是,使用javac 1.7.0_07进行编译:

使用未经检查的警告进行编译 -

HashSet<Integer> s0 = new HashSet(2);

无消息编译 -

HashSet<Integer> s1 = new HashSet<>(2);
HashSet<Integer> s2 = new HashSet<Integer>(2);
相关问题