两者有什么区别:
首先:
ArrayList<String> linkList = new ArrayList<String>();
第二个:
ArrayList linkList = new ArrayList<String>();
或者有什么区别吗?
最佳答案
ArrayList<String> linkList = new ArrayList<String>();
使用泛型来确保类型安全。
ArrayList linkList = new ArrayList<String>();
没有。正如@BruceMartin 指出的那样,这意味着行
linkList.add(0);
String element = (String) linkList.get(0);
在第一种情况下给出编译时错误,但在第二次声明时在运行时失败。
作为另一个例子,要从两个备选方案中get()
一个String
,第二个变体需要强制转换:
首先:
String element = linkList.get(0);
第二个:
String element = (String) linkList.get(0);
关于java - ArrayList初始化类型的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11987819/