Java 7은 제네릭 코드의 범용성을 높이기 위해 다이아몬드 연산자(<>)를 도입했습니다. 예를 들어, List의 type을 선언과 생성자 모두에 선언하는 대신, <>를 사용하여 생성자 선언을 단순화할 수 있게됬습니다. 그렇게만 해도 컴파일러가 알아서 type을 유추할 수 있습니다.
참고: 이 규칙은 프로젝트의 sonar.java.source의 값이 7보다 낮은 경우(java7) 자동으로 비활성화됩니다.
규칙을 어긴 코드
List<String> strings = new ArrayList<String>(); // 규칙을 어긴 코드
Map<String,List<Integer>> map = new HashMap<String,List<Integer>>(); // 규칙을 어긴 코드
규칙을 준수한 해결책
List<String> strings = new ArrayList<>();
Map<String,List<Integer>> map = new HashMap<>();
If you like SONARKUBE, don’t forget to give me a star.