Возврат массива без назначения переменной
Есть ли какой-либо способ в java для возврата нового массива без его назначения сначала переменной?
Вот пример:
public class Data {
private int a;
private int b;
private int c;
private int d;
public int[] getData() {
int[] data = {a,b,c,d};
return data;
}
}
Я хочу сделать что-то вроде этого, но не работает:
public int[] getData() {
return {a,b,c,d};
}
Ответы
Ответ 1
Вам все равно нужно создать массив, даже если вы не назначаете его переменной. Попробуйте следующее:
public int[] getData() {
return new int[] {a,b,c,d};
}
Ваш образец кода не работал, потому что компилятор, с одной стороны, все еще должен знать, какой тип вы пытаетесь создать с помощью статической инициализации {}
.
Ответ 2
public int[] getData() {
return new int[]{a,b,c,d};
}
Ответ 3
Вы должны были создать объект, возвращаемый функцией, следующее должно решить вашу проблему.
public int[] getData() {
return new int[]{a,b,c,d};
}
надеюсь, что это поможет
Ответ 4
return new Integer[] {a,b,c,d}; // or
return new int[] {a,b,c,d};