我有一个枚举类

public enum PacketTypes {
        NONE,  //0
        TEXT, //1
        ACCEL, //2
        GYRO,  //3
        MAG,   //4
        LOCATION, //5
        QUAT, //6
        COLOR, //7
        BUTTON //8
    }


我很好奇如何将这些枚举映射到int,例如

    System.out.println(PacketTypes.LOCATION); // Prints a 5


我希望这是有道理的。

最佳答案

您可以使用枚举附带的内置ordinal()方法:

System.out.println(PacketTypes.LOCATION.ordinal());


您也可以采用其他方式:

int typeIndex = 3;
PacketTypes type = PacketTypes.values()[typeIndex]; // GYRO

关于java - 如何将枚举映射到整数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43529608/

10-10 11:56