Меньше у вас беспомощного и повторяющегося кода, и чем больше код читается и поддерживается.
List<String> nameList = new ArrayList<String>();
или
List<String> nameList = new ArrayList<>();
Хорошо, не так много различий.
Но теперь предположим, что вам нужно изменить универсальный тип: String на Integer, причем первым способом вы должны будете сделать два изменения:
List<Integer> nameList = new ArrayList<Integer>();
^------ -------------^
Действительно не приятно.
С бриллиантом требуется один:
List<Integer> nameList = new ArrayList<>();
^---
Но возьмем другой пример:
Map<String, List<Integer>> map = new HashMap<String, List<Integer>>();
или
Map<String, List<Integer>> map = new HashMap<>();
Это проясняет ситуацию.
В приложении вы обычно объявляете и создаете экземпляры множества коллекций и универсальных классов. Рефакторинг это действительно дешево. Так что просто сделай это.