Так и не смог понять как вернуть значение созданного массива в методе. Оказалось просто написать название массива. Почему так?
Ведь вывести на экран тот же массив array[] не получится указав System.out.println(array);
Алексей
18 уровень
Вопрос по возврату значения массива
Решен
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #598481
12 декабря 2018, 19:04решение
Можно вывести массив на экран, написав System.out.println(Arrays.toString(array));
но вопрос ведь не в этом, правильно?
О том, какой тип значения возвращает метод, можно посмотреть по заголовку этого метода. Строка
public static int[] initializeArray() говорит нам о том, что то, что будет написано после оператора return является массивом целых чисел (int[])
Поэтому результат выполнения метода можно положить в какую-то переменную того же типа, т.е. в данном случае int[]:
Воспринимай левую и правую часть этой записи отдельно друг от друга, а знак равно как оператор:
1) создать переменную array типа массив целых чисел (int[]) -- левая часть
2) выполнить метод initializeArray() -- правая часть
3) положить результат выполнения метода в созданную переменную -- выполнить действие "="
+2
Илья ГековMaster
12 декабря 2018, 19:04
Вернуть значение и вывести на экран - это совсем разные вещи. Массив - это объект, переменная, которой присвоен массив - это просто ссылка на этот объект. Возвращая к примеру return array; вы возвращаете ссылку на этот объект. Для вывода на экран используется метод toString() класса Object, который возвращает название класса c хэшкодом, в массивах он никак не переопределен.
0