in

java: uso de valores de Enum como literales de cadena

apple touch icon@2

No puedes. Creo que tienes CUATRO opciones aquí. Los cuatro ofrecen una solución pero con un enfoque ligeramente diferente …

Opcion uno: utilizar el incorporado name() en una enumeración. Esto está perfectamente bien si no necesita ningún formato de nomenclatura especial.

    String name = Modes.mode1.name(); // Returns the name of this enum constant, exactly as declared in its enum declaration.

Opción dos: agregue propiedades primordiales a sus enumeraciones si desea más control

public enum Modes {
    mode1 ("Fancy Mode 1"),
    mode2 ("Fancy Mode 2"),
    mode3 ("Fancy Mode 3");

    private final String name;       

    private Modes(String s) {
        name = s;
    }

    public boolean equalsName(String otherName) {
        // (otherName == null) check is not needed because name.equals(null) returns false 
        return name.equals(otherName);
    }

    public String toString() {
       return this.name;
    }
}

Opción tres: use finales estáticas en lugar de enumeraciones:

public final class Modes {

    public static final String MODE_1 = "Fancy Mode 1";
    public static final String MODE_2 = "Fancy Mode 2";
    public static final String MODE_3 = "Fancy Mode 3";

    private Modes() { }
}

Opción cuatro: Las interfaces tienen todos los campos públicos, estáticos y finales:

public interface Modes {

    String MODE_1 = "Fancy Mode 1";
    String MODE_2 = "Fancy Mode 2";
    String MODE_3 = "Fancy Mode 3";  
}

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

SQL – UNIONES INTERNAS

6604cc50ec280ff7256944ffdfa2b8eb 1200 80

50 mejores borrachos de películas | GamesRadar +