Special characters in an enum

enums, java

Solution

You could do something like this:

private enum SpecialChars{
   COMMA(","),
   APOSTROPHE("'"),
   OPEN_PAREN("("),
   CLOSE_PAREN(")");

   private String value;
   private SpecialChars(String value)
   {
      this.value = value;
   }

   public String toString()
   {
      return this.value; //will return , or ' instead of COMMA or APOSTROPHE
   }
}

Example use:

public static void main(String[] args)
{
   String line = //..read a line from STDIN

   //check for special characters 
   if(line.equals(SpecialChars.COMMA)      
      || line.equals(SpecialChars.APOSTROPHE)
      || line.equals(SpecialChars.OPEN_PAREN) 
      || line.equals(SpecialChars.CLOSE_PAREN)
   ) {
        //do something for the special chars
   }
}

Problem

I want to put the special characters, the parentheses ( '(' and ')' ) and the apostrophe ('), in an enum. I had this: ``` private enum specialChars{ "(", ")", "'" } ``` but it doesn't work. Java says something about invalid tokens. How can I solve this? Grtz me.eatCookie();

Original source

Related problems