import static java.lang.Character.isUpperCase; public class Symbole { private boolean terminal; private boolean epsilon; private String value; public Symbole(String value) { this.value = value; if (this.value.isEmpty()) { this.terminal = false; this.epsilon = true; } else { this.epsilon = false; this.terminal = !isUpperCase(this.value.charAt(0)); } } public boolean isTerminal() { return terminal; } public boolean isEpsilon() { return epsilon; } public String getValue() { return value; } @Override public String toString() { return "Symbole{" + "terminal=" + terminal + ", epsilon=" + epsilon + ", value='" + value + '\'' + '}'; } }