Как добавить данные в массив, который был инициализирован в конструкторе? - PullRequest
0 голосов
/ 28 апреля 2020
import java.util.ArrayList;
import java.util.Arrays;

public class Dragon {


    private String[] interests = new String[4];

    public Dragon(String[] interes) {

        setInterests(interes);  
    }

    public void setInterests(String[] interes) {
        interests = interes;
    }
    public String[] getInterests() {
        return interests;
    }

    @Override
    public String toString() {
        return "Dragon [interests=" + Arrays.toString(interests)"]";
    }   
}

Основной класс DragonMain

public class DragonMain {

    public static void main(String[] args) {

        Dragon test = new Dragon(args);

        test.setInterests(interes);

    }
}

Я не уверен, где мне нужно вводить данные для массива, поскольку я продолжаю получать ошибки.

Ошибка:

Интерес не может быть преобразован в переменную.

Ответы [ 2 ]

1 голос
/ 28 апреля 2020

Вы еще не инициализировали массив в методе main.

public static void main(String[] args) {

    Dragon test = new Dragon(args);

    String[] interes = {"Xyz"};
    test.setInterests(interes);

}

Отсутствует + в конкатенации строк.

@Override
    public String toString() {
        return "Dragon [interests=" + Arrays.toString(interests)+"]";
    }
0 голосов
/ 28 апреля 2020

Я думаю, что это твоя проблема. пропуская + в конкатенации строк

return "Dragon [interests=" + Arrays.toString(interests)+"]";

btw, вы должны опубликовать свою ошибку, а не сказать "Я получаю ошибки".

...