Devuelve varios valores en Java

Rupam Yadav 20 noviembre 2021 16 octubre 2021 Java Java Method
  1. Devolver varios valores del mismo tipo usando Array en Java
  2. Devolver varios valores usando una clase personalizada en Java
  3. Devolver varios valores usando una lista en Java
Devuelve varios valores en Java

En este tutorial, aprenderemos a devolver múltiples valores en Java. No podemos devolver más de un valor de un método directamente en Java, pero podemos usar otras características de Java, como Array, Pair, List etc. para lograrlo.

Devolver varios valores del mismo tipo usando Array en Java

Podemos devolver más de un valor que sea del mismo tipo de datos usando un array. Como el array almacena varios valores, podemos devolver un array de un método como en nuestro ejemplo. A continuación, creamos un método method1() que tiene un tipo de retorno del array de cadenas String[]. En method1(), creamos tres variables locales y les asignamos valores, ahora creamos un array de tipo String llamada array1.

Ahora configuramos los índices de array1 con las variables. Luego devolvemos el array usando return array1. En el método main(), llamamos a method1() y lo convertimos a String usando Arrays.toString() y podemos ver el array de todos los valores en la salida.

import java.util.Arrays;

public class MultipleObjects {
    public static void main(String[] args) {

        String getArray = Arrays.toString(method1());
        System.out.println("Array values: " + getArray);
    }

    private static String[] method1() {
        String name = "John Doe";
        String city = "New York";
        String gender = "male";

        String[] array1 = new String[3];
        array1[0] = name;
        array1[1] = city;
        array1[2] = gender;

        return array1;
    }
}

Producción:

Array values: [John Doe, New York, male]

Devolver varios valores usando una clase personalizada en Java

En este ejemplo, creamos una clase personalizada, ExampleClass, con tres tipos diferentes de variables. En el constructor ExampleClass, obtenemos los parámetros e inicializamos todas las variables con valores. Creamos un método method1() que devuelve una instancia de ExampleClass. En method1() llamamos al constructor de ExampleClass y le pasamos valores. Dentro de la función main() llamamos al método method1() que devuelve el objeto de ExampleClass.

Ahora obtenemos los valores usando el objeto getValues. Observe que podemos usar valores de diferentes tipos.

public class MultipleObjects {
    public static void main(String[] args) {

        ExampleClass getValues = method1();
        System.out.println("Value1: " + getValues.var1);
        System.out.println("Value2: " + getValues.var2);
        System.out.println("Value3: " + getValues.var3);

    }

    private static ExampleClass method1() {

        return new ExampleClass(20, "ExampleString", true);
    }

    static class ExampleClass {
        int var1;
        String var2;
        boolean var3;

        ExampleClass(int var1, String var2, boolean var3) {
            this.var1 = var1;
            this.var2 = var2;
            this.var3 = var3;
        }

    }
}

Producción:

Value1: 20
Value2: ExampleString
Value3: true

Devolver varios valores usando una lista en Java

Hacemos una Lista de todos los valores que queremos devolver en este programa. En method1(), creamos tres variables de diferentes tipos de datos y luego llamamos a Arrays.asList() para crear una Lista y pasar todas las variables en ella que harán una lista de Object. En main(), llamamos a method1() y obtenemos la lista de objetos y la imprimimos en la consola.

import java.util.Arrays;
import java.util.List;

public class MultipleObjects {
    public static void main(String[] args) {

        List<Object> getList = method1();
        System.out.println("List of values: " + getList);

    }

    private static List<Object> method1() {

        int var1 = 15;
        String var2 = "ExampleString";
        boolean var3 = false;

        return Arrays.asList(var1, var2, var3);
    }

}

Producción:

List of values: [15, ExampleString, false]
Author: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artículo relacionado - Java Method

  • Comparar ArrayLists en Java
  • Despacho dinámico de métodos en Java
  • Llamar asincrónicamente a un método en Java
  • Filtro de Stream en Java
  • Usando el método System.exit() en Java
  • Ocultación de métodos en Java