Как вернуть два значения из метода java

Аватар пользователя Сергей Якимович
Сергей Якимович
21 ноября 2022

В Java мы не можем вернуть два значения из метода, только одно. Но можем возвратить массив, список или мапу, содержащие нужные нам данные. Например :

public static List<Integer> func() {
    int a = 1;
    int b = 2;
    return List.of(a, b);
}

Также можно описать класс, содержащий несколько переменных разных типов, и вернуть объект этого класса.

    public class MyClass { // необходимо вернуть число и строку
        private int n;
        private String str;

        public MyClass(int n, String str) { // конструктор
            this.n = n;
            this.str = str;
        }

        public int getN() { return n; } // геттеры
        public String getStr() { return str; }
    }

    public static MyClass func() { // метод
        return new MyClass(5, "Ivan"); // создаем объект нашего класса и возвращаем его
    }

    MyClass x = func(); // получаем объект нашего класса
    System.out.println(x.getN() + "  " + x.getStr()); // => 5  Ivan
0 0