2

我遇到了以下代码,想知道这是否是一种好习惯:

LinkedList<String> ll = new LinkedList(); 

我会写

List<String> l = new LinkedList<String> (); 

所以这里有两个问题:

  1. 我一直认为使用类型List而不是ArrayList/是一种很好的做法LinkedList
  2. 如果省略赋值运算符的 RHS 上的菱形,究竟会发生什么?
4

1 回答 1

5
  1. 始终对接口进行编程,这样您的代码就可以保持实现独立。
  2. 您正在创建原始类型,这会给您一个警告,但它会编译。“LinkedList 是一种原始类型。对泛型类型 LinkedList 的引用应该被参数化”。由于擦除,这实际上并不重要。
于 2013-04-24T22:15:18.437 回答