Wie kann ich eine Java-Enumeration anhand ihres String-Werts nachschlagen?

Ich möchte eine Aufzählung anhand ihres Zeichenfolgenwerts (oder möglicherweise eines anderen Werts) nachschlagen. Ich habe den folgenden Code ausprobiert, in Initialisierern ist jedoch keine statische Aufladung zulässig. Gibt es einen einfachen Weg?

public enum Verbosity {

    BRIEF, NORMAL, FULL;

    private static Map<String, Verbosity> stringMap = new HashMap<String, Verbosity>();

    private Verbosity() {
        stringMap.put(this.toString(), this);
    }

    public static Verbosity getVerbosity(String key) {
        return stringMap.get(key);
    }
};

Antworten auf die Frage(10)

Ihre Antwort auf die Frage