Remove Explicit Type Argument

Properties

Property Value
First seen in jSparrow version 1.0.0
Minimum Java version 7
Remediation cost 1 min
Links S2293

Description

Since Java 7 the Diamond Operator (<>) can be used to simplify instance creation where generics are involved.

Benefits

Applying this rule reduces clutter and improves readability.

Requirement & Tags

Requirements

Java 7

Code Changes

Type arguments on new instance creations

Pre

Map<String, List<String>> myMap = new HashMap<String, List<String>>();

Post

Map<String, List<String>> myMap = new HashMap<>();

Type arguments on method invocation parameters

Pre

// Requires Java 8
List<GenericSample> result = foo.genericMethod(new ArrayList<GenericSample>(), input);

Post

// Requires Java 8
List<GenericSample> result = foo.genericMethod(new ArrayList<>(), input);