Cómo devolver una matriz (array)

JavaJavaBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En Java, podemos devolver una matriz (array) desde un método. Esto es útil cuando queremos devolver un grupo de datos. En este laboratorio (lab), aprenderemos cómo devolver una matriz (array) en Java.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/DataStructuresGroup(["Data Structures"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java/BasicSyntaxGroup -.-> java/variables("Variables") java/BasicSyntaxGroup -.-> java/for_loop("For Loop") java/BasicSyntaxGroup -.-> java/output("Output") java/DataStructuresGroup -.-> java/arrays("Arrays") java/DataStructuresGroup -.-> java/arrays_methods("Arrays Methods") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/classes_objects("Classes/Objects") subgraph Lab Skills java/variables -.-> lab-117450{{"Cómo devolver una matriz (array)"}} java/for_loop -.-> lab-117450{{"Cómo devolver una matriz (array)"}} java/output -.-> lab-117450{{"Cómo devolver una matriz (array)"}} java/arrays -.-> lab-117450{{"Cómo devolver una matriz (array)"}} java/arrays_methods -.-> lab-117450{{"Cómo devolver una matriz (array)"}} java/classes_objects -.-> lab-117450{{"Cómo devolver una matriz (array)"}} end

Declarar un método que devuelva una matriz (array).

Para devolver una matriz (array), el tipo de retorno del método debe ser un tipo de matriz (array). En el siguiente ejemplo, declaramos un método llamado getArray() que devuelve una matriz (array) de enteros.

public static int[] getArray() {
    int[] arr = {1, 2, 3, 4, 5};
    return arr;
}

Llamar al método.

Para llamar al método que devuelve una matriz (array), asigna la matriz (array) devuelta a una variable del mismo tipo, como se muestra a continuación:

int[] myArray = getArray();

Imprimir la matriz (array) devuelta.

Para imprimir la matriz (array) devuelta por el método, puedes usar un bucle for para iterar sobre los elementos de la matriz (array) e imprimirlos uno por uno:

for (int i = 0; i < myArray.length; i++) {
    System.out.print(myArray[i] + " ");
}

Pasar una matriz (array) a un método y devolver una matriz (array) modificada.

También podemos pasar una matriz (array) a un método y realizar operaciones en ella dentro del método, luego devolver la matriz (array) modificada. En el siguiente ejemplo, pasamos una matriz (array) de enteros a un método llamado reverseArray() que invierte el orden de los elementos en la matriz (array) y devuelve la matriz (array) invertida.

public static int[] reverseArray(int[] arr) {
    int left = 0;
    int right = arr.length - 1;
    while (left < right) {
        int temp = arr[left];
        arr[left] = arr[right];
        arr[right] = temp;
        left++;
        right--;
    }
    return arr;
}

Llamar al método e imprimir la matriz (array) modificada.

Para llamar al método que invierte la matriz (array) y devuelve la matriz (array) modificada, primero, crea una matriz (array), luego llama al método reverseArray() y pasa la matriz (array) creada como parámetro. Finalmente, para imprimir la matriz (array) modificada, usa un bucle for para iterar sobre los elementos de la matriz (array) e imprímelos uno por uno:

int[] myArray = {1, 2, 3, 4, 5};
myArray = reverseArray(myArray);
for (int i = 0; i < myArray.length; i++) {
    System.out.print(myArray[i] + " ");
}

Devolver una matriz (array) de objetos desde un método.

También podemos devolver una matriz (array) de objetos desde un método. En el siguiente ejemplo, creamos una clase Student con los miembros de datos stud_name y roll_no. Luego, declaramos un método llamado getStudents() que devuelve una matriz (array) de objetos Student.

class Student
{
    String stud_name;
    int roll_no;
    Student(String stud_name, int roll_no) {
        this.stud_name = stud_name;
        this.roll_no = roll_no;
    }
}
public static Student[] getStudents() {
    Student[] arr = new Student[2];
    arr[0] = new Student("Alice", 101);
    arr[1] = new Student("Bob", 102);
    return arr;
}

Llamar al método e imprimir los objetos.

Para llamar al método que devuelve una matriz (array) de objetos, asigna la matriz (array) devuelta a una variable del mismo tipo, luego usa un bucle for para iterar sobre los elementos de la matriz (array) e imprime el contenido de cada objeto.

Student[] myArray = getStudents();
for (int i = 0; i < myArray.length; i++) {
    System.out.println("Name: " + myArray[i].stud_name + " Roll No: " + myArray[i].roll_no);
}

Resumen

En este laboratorio (lab), aprendimos cómo devolver una matriz (array) en Java. También aprendimos cómo pasar una matriz (array) a un método, realizar una operación en ella y devolver la matriz (array) modificada. Además, aprendimos cómo devolver una matriz (array) de objetos desde un método.