Как поместить {,},(,) в перечисление

#java #enums

#java #перечисления

Вопрос:

Я пытаюсь сгруппировать кучу прицветников в java enum . Может кто-нибудь сказать мне, как это сделать? Я попытался выполнить следующее

 enum sample{'{','}';}
enum sample{"{","}";}
enum sample{{,};}
  

ни один из них не компилируется.

Комментарии:

1. Вы имеете в виду enum? Вы написали это с ошибкой 4 раза….

2. Извините, я только что исправил их все, есть идеи, как это сделать?

Ответ №1:

Не забывайте, что у этого enum может быть пользовательский конструктор:

 public enum Bracket {
  OPEN_BRACKET('{'), CLOSE_BRACKET('}');

  private final char symbol;

  Brackets(char symbol) {
      this.symbol = symbol;
  }

  public char getSymbol() {
      return symbol;
  }    
}
  

Комментарии:

1. Спасибо за помощь! Это первый раз, когда я видел, как построить перечисление таким образом

Ответ №2:

Вы также можете создать перечисление с помощью пользовательских методов toString(), которые будут возвращать ваши пользовательские строки:

 public enum MyType {
ONE {
    public String toString() {
        return "{";
    }
},

TWO {
    public String toString() {
        return "}";
    }
}
}
  

Ответ №3:

enum не допускает специальных символов. Он допускает только буквенно-цифровые символы с первой буквой символа. Итак, у вас не может быть {,} и т. Д.. Он следует тому же соглашению об именовании, что и переменные.