ArrayList<String> 和 ArrayList<> 的区别?

Difference between ArrayList<String> and ArrayList<>?

1:

private List<String> blacklist = new ArrayList<String>();

2:

private List<String> blacklist = new ArrayList<>();

使用第一个或第二个在编译时间或纳秒级性能方面有什么优势吗?

这两个语句在语义上是相同的。

第二个示例使用 Java 7 中的 Diamond 运算符,因此在编译时会稍微慢一些。在运行时,它们将具有完全相同的性能,因为泛型信息将被完全删除。

没有区别。在第二种情况下,编译器推断 ArrayList.

的泛型类型