Можно ли иметь массив в качестве атрибута в перечислении? Наличие ошибки времени компиляции

1

Возможно ли иметь массив как атрибут в перечислении?

public enum dsfd{
    MANEUVERS({"IMC_ID_MAN_TYPE"});

    public final String columns[];
    private dsfd(String column[]){
        this.columns = column;
    }
}

Я получаю ошибки:

Syntax error on token "{", @ expected after this token      line 1 
Syntax error, insert "Identifier" to complete EnumConstant  line 2

Что я делаю не так?

Я не знаю, как unflag как дубликат, но мой вопрос заключался не в том, как инициализировать массив со значениями, но как сделать это непосредственно в конструкторе перечисления (или любом другом вызове метода, который я думаю...).

  • 1
    tryL MANEUVERS (новая строка [] {"IMC_ID_MAN_TYPE"});
Теги:

2 ответа

2
Лучший ответ

Вы не инициализируете свой массив правильно - вам не нужен призыв к new:

MANEUVERS(new String[]{"IMC_ID_MAN_TYPE"});
1

Ваш код должен быть скорректирован следующим образом:

public enum dsfd{
    MANEUVERS(new String[]{"IMC_ID_MAN_TYPE"});

    public final String columns[];
    private dsfd(String column[]){
        this.columns = column;
    }
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню