The generated bytecode is the same. The new diamond operator is purely implemented to save programmers from having to redundantly specify the type twice.
Diamond Operator performance
-
01-09-2022 - |
Question
I'm wondering if there are any known performance differences in terms of the Java 7 diamond operator versus the language construct for previous versions of Java.
Basically, is it faster to use this:
List<String> myList = new ArrayList<>()
Map<String, Integer> myMap = new HashMap<>()
or to use this:
List<String> myList = new ArrayList<String>()
Map<String, Integer> myMap = new HashMap<String, Integer>()
Are they the same speed?
Solution
OTHER TIPS
Negative. Due to type erasure, the diamond operator (and generics in general) have the same run-time performance as they always have (e.g. at run-time Collections
just hold Object(s)).
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow