Как вернуть массив в java
Для возвращения массива в Java необходимо объявить возвращаемый тип метода как массив и вернуть этот массив из метода с помощью ключевого слова return . Например, чтобы вернуть массив целых чисел из метода, можно использовать следующий код:
public static int[] returnArray() int[] arr = 1, 2, 3, 4, 5>; return arr; >
В этом примере метод returnArray объявлен как public static int[] , что означает, что он возвращает массив целых чисел. Внутри метода создается массив arr и он возвращается с помощью ключевого слова return . После вызова метода можно сохранить возвращенный массив в переменной и использовать его дальше в коде.
Как правильно вернуть массив из метода?
Все, разобрался. Я получал ссылку на объект массива в памяти, а мне нужно было вывести в консоль содержимое массива.
31 мая 2019 в 8:38
По заданию, вам ничего не надо выводить в консоль. Нужно вернуть исправленный массив
31 мая 2019 в 8:40
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Не менял вашу идею решения, немного подправил.
for (int i=0; i return array; >
Отслеживать
ответ дан 31 мая 2019 в 8:38
1,309 9 9 серебряных знаков 24 24 бронзовых знака
Не подскажите почему второй вариант сработал, в отличии от foreach?
31 мая 2019 в 8:40
@Thisisqwi потому что форич не изменяет текущий array. Он просто предоставляет значения
31 мая 2019 в 8:43
@Thisisqwi, а вам надо изменять элементы массива, а не выводить их
31 мая 2019 в 8:46
Не вижу смысла в возврате массива, так как обхект вы будете и так менять по ссылке, то есть этот метод можно сделать void и пользоваться дальше тем массивом, который закинули в метод
31 мая 2019 в 10:48
@AndriiTorzhkov там метод статический, посмотрите на само задание по ссылке. Ну, и как я написал, логику работы приложения придуманную автором я не менял.
Вернуть массив (полученный чтением из текстового файла) из метода

Здравствуйте, подскажите как вернуть переменную-массив из метода, полученную в блоке try? Т.е. внутри блока метода есть блок try для чтения файла, в этом блоке сформирован массив и он не виден оператору return. Вот так примерно:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
String[] testData1 = createTest(testData); // System.out.println(Arrays.toString(testData1)); static String[] createTest(String testFile) { String[] arrQueTest; try (FileReader reader = new FileReader(testFile)) { // Тут читаем текстовый файл с диска и формируем нужный массив arrQueTest return arrQueTest; //тут естественно виден массив arrQueTest, но Java прикапывается что это не то место, //чтобы вернуть данные } catch (IOException ex) { System.out.println(ex.getMessage()); } return arrQueTest; //тут не виден массив arrQueTest, выделен красным }
Я хочу вернуть массив из метода, чтобы следующим методом провести тест по данным testData1.
Возвращение массива из метода в Java
Здесь мы имеем метод createArray(), из которого мы создаем массив динамически, принимая значения от пользователя и возвращаем созданный массив из метода.
Пример
import java.util.Arrays; import java.util.Scanner; public class ReturningAnArray < public int[] createArray() < Scanner sc = new Scanner(System.in); System.out.println("Enter the size of the array that is to be created:: "); int size = sc.nextInt(); int[] myArray = new int[size]; System.out.println("Enter the elements of the array ::"); for(int i=0; ireturn myArray; > public static void main(String args[]) < ReturningAnArray obj = new ReturningAnArray(); int arr[] = obj.createArray(); System.out.println("Array created is :: "+Arrays.toString(arr)); >>
Итог
Enter the size of the array that is to be created:: 5 Enter the elements of the array :: 23 47 46 58 10 Array created is :: [23, 47, 46, 58, 10]
Средняя оценка 3.7 / 5. Количество голосов: 22
Спасибо, помогите другим — напишите комментарий, добавьте информации к статье.
Или поделись статьей
Видим, что вы не нашли ответ на свой вопрос.
Помогите улучшить статью.
Напишите комментарий, что можно добавить к статье, какой информации не хватает.