Встречаю различные варианты декларирования коллекций:
List
List list = new ArrayList
List
И совершенно нет ясности, какие объекты в какую коллекцию можно положить. Экспериментально выяснил, что в коллекцию 2 - можно добавить объекты (Object). А в коллекцию 3 - только с типом Integer.
Вопрос 1: как понять по декларированию, какие объекты может содержать коллекция?
Вопрос 2: для каких прикладных задач можно использовать первый, второй и третий вариант декларирования коллекций?
Ответ
Параметр типа коллекции содержится в левой части, что написано в правой части значения не имеет
Таким образом, записи (1, 3) полностью идентичны:
List
List
Вы можете вписывать в правую часть параметр или не вписывать, как вам удобно. Компиляция (по ссылке выше) показала, что на время выполнения запись никак не влияет.
Тогда как в выражении 2:
List list = new ArrayList
Тип не указан в левой части, значит тип - любой объект Object
Комментариев нет:
Отправить комментарий