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

Пользователь

от miguel_ritchie , в категории: Java , 3 месяца назад

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

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от wilburn , 2 месяца назад

@miguel_ritchie 

В Java нельзя вернуть напрямую два значения из метода, но можно использовать классы-контейнеры или массивы для этой цели. Вот несколько способов:

  1. Использование массива:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
public int[] getTwoValues() {
    int[] values = new int[2];
    values[0] = 1;
    values[1] = 2;
    return values;
}

// В другом месте кода:
int[] result = getTwoValues();
int value1 = result[0];
int value2 = result[1];


  1. Использование класса-контейнера:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
public class TwoValues {
    public int value1;
    public int value2;
}

public TwoValues getTwoValues() {
    TwoValues values = new TwoValues();
    values.value1 = 1;
    values.value2 = 2;
    return values;
}

// В другом месте кода:
TwoValues result = getTwoValues();
int value1 = result.value1;
int value2 = result.value2;


  1. Использование объекта Map:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import java.util.HashMap;
import java.util.Map;

public Map getTwoValues() {
    Map values = new HashMap<>();
    values.put("value1", 1);
    values.put("value2", 2);
    return values;
}

// В другом месте кода:
Map result = getTwoValues();
int value1 = result.get("value1");
int value2 = result.get("value2");


Выбор способа зависит от конкретной ситуации и предпочтений разработчика.