2017-08-29 53 views
0

我在审阅某人的代码。他们宣布这样的阵列:键入字符串数组列表

List<String> values = new <String> ArrayList(); 

我甚至不知道你可以做到这一点。我认为你必须做这样的:?

List<String> values = new ArrayList<String>() 

是否有任何优势,做第一种方式(后新的代替后的ArrayList它编译

回答

0

在Java中这样做实际上正在。没有影响

List<String> values = new <String> ArrayList(); 

列表仍然是一个原始列表

事实上,你甚至可以做:

List<String> values = new <String>ArrayList(); 
values = new <Integer>ArrayList(); 

仍然没有界定ArrayList中持有...

正确的形式是:

List<String> values = new ArrayList<>(); 

List<String> values = new ArrayList<String>(); 
+0

我是这么认为。谢谢。为什么甚至允许语法? – Tony