Java中<>()和<DataType>()有什么区别

时间:2019-12-09 06:50:00

标签: java generics arraylist

ArrayList<String> animals = new ArrayList<>()ArrayList<String> animals = new ArrayList<String>()有什么区别?我很困惑。

2 个答案:

答案 0 :(得分:3)

两者实际上是相同的。 当Java 5中引入泛型时,我们不得不使用

ArrayList<String> animals = new ArrayList<String>();

Java 7到货时,它提供的功能之一就是对较短形式的支持:

ArrayList<String> animals = new ArrayList<>();

因此,如果您使用的是Java 7+,则可以同时使用两者(当然,较短的格式是首选)

答案 1 :(得分:1)

没什么区别,如果您使用Java 1.6或更早版本,则应该这样编写代码

ArrayList<String> animals = new ArrayList<String>();

但是在Java 1.6之后,它将推断类型,您可以仅用菱形<>编写代码。

ArrayList<String> animals = new ArrayList<>();
相关问题