java - 返回枚举值而不调用 get 函数

标签 java enums

Java 中是否可以返回 enum 值,而无需调用函数来返回该值,例如我的示例中的 getFlag() ?如果是这样,怎么办?

public enum MessageFlags {
        BIT0((short)1),
        BIT1((short)2),
        BIT2((short)4),
        BIT3((short)8),
        BIT4((short)16),
        BIT5((short)32),
        BIT6((short)64),
        BIT7((short)128),
        BIT8((short)256),
        BIT9((short)512),
        BIT10((short)1024),

        set_freq(BIT0),
        get_freq(BIT1);

        short bitFlag = 0;
        MessageFlags flag;

        MessageFlags(short flag) {
            this.bitFlag = flag;
        }

        MessageFlags(MessageFlags flag) {
            this.flag = flag;
        }

        public short getFlag() {
            return this.flag.bitFlag;
        }

        public short getValue() {
            return this.bitFlag;
        }
    }

最佳答案

只需输入 MessageFlags.BITX 即可返回与 getFlag() 相同的值

关于java - 返回枚举值而不调用 get 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7031424/

相关文章:

java - 在 Android 中从 URI 获取文件路径时出错

data-structures - 用于在 Go 中存储已解析日志行的紧凑数据结构(即 Go 中多个枚举的紧凑数据结构)

java - 如何从注释处理器中的注释值捕获枚举

c# - 如何从字符串返回枚举值?

java - ListView 的大小或位置不符合我的预期

java - 在 Java TCP 中接受多个客户端

java - Vaadin8 迁移后 Vaadin Widgetset 编译错误

java - 在 Java 中打开枚举不会转到正确的大小写

typescript - 强制对象包含枚举的所有键,并且仍然对其值进行类型推断

java - 计算字符串中第一个与负数的运算