Что возвращает новый ArrayList <> (Arrays.asList (...))? - PullRequest
1 голос
/ 13 января 2020

Мне интересно знать, что:

new ArrayList<Something>(
         Arrays.asList(
              new Something("1"),
              new Something("2")                                             
         )
);

возвращает?

Будет ли возвращено ArrayList, содержащее эти Something объекты, или будет возвращено ArrayList, которое содержит List из этих Something объектов (т.е. ArrayList<List<Something>>)?

Ответы [ 2 ]

1 голос
/ 13 января 2020

Это вернет два Somethings в списке, а не список со списком, потому что элементы коллекции, содержащиеся в коллекции, которую вы добавляете в (), будут добавлены в список массивов, а не коллекция как коллекция .

0 голосов
/ 13 января 2020

Это ничего не возвращает, вы создаете экземпляр generi c ArrayList.

Arrays.asList ... here Массив stati c метод, используемый для создания объектов Класс Something, потому что тип ArrayList<> содержит класс Something.

Лучше распечатать ArrayList, чтобы проверить, что получится.

for(Something something:myList){

    //print the objects here
}
...