Работает ли он с Java 7
? (У меня установлен только Java 6.)Алмазный оператор для возвращаемого значения
List<> customers = service.getCustomers(); // returns List<Customer>
Спасибо.
Работает ли он с Java 7
? (У меня установлен только Java 6.)Алмазный оператор для возвращаемого значения
List<> customers = service.getCustomers(); // returns List<Customer>
Спасибо.
Нет, алмаз используется, чтобы избежать шаблонный код определения в два раза дженерики:
Java 6:
List<List<String>> myList= new ArrayList<List<String>>()
Java 7 эквивалент:
List<List<String>> myList= new ArrayList<>() // that means the generic is the same that the declared one in the left side of the assignation
, но в вашем примере алмазный оператор не имеет «оригинальной общей» декларации, чтобы предположить правильный тип, поэтому он не будет компилироваться.
Нет, это ошибка времени компиляции.
Неверное количество аргументов для типа List; это не может быть с параметрами <>
Используйте это как повод для обновления вашей версии Java. – Tom