为了账号安全,请及时绑定邮箱和手机立即绑定

在构造函数调用中设置一个短值

在构造函数调用中设置一个短值

噜噜哒 2021-05-31 11:09:18
我有enum一个构造函数:enum myEnum {    A(0), B(1), C(2);    private final short value;    private myEnum(short value) {        this.value = value;    }    public short getValue() {        return this.value;    }}不幸的是,Eclipse 让我知道没有构造函数接受单个int. 因此,我被降级为短...A((short) 0), B((short) 1), C((short) 2);...这是为每个值完成的,还是int在构造函数中使用an并在赋值时进行转换。有没有比花时间施放更好的方法来做到这一点,或者没有更好的解决方案?
查看完整描述

2 回答

?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

您可以使用

short shortValue = Integer.valueOf(0).shortValue();

在引擎盖下它仍然是一样的。所以视而不见是好事。


查看完整回答
反对 回复 2021-06-02
?
largeQ

TA贡献2039条经验 获得超7个赞

您总是必须强制转换,因为不幸的是,shorts 没有文字格式,我建议在您的枚举中添加另一个构造函数:


private myEnum(int value) {

    this((short) value);

}

这样您就可以避免将其转换为枚举的值。


查看完整回答
反对 回复 2021-06-02
  • 2 回答
  • 0 关注
  • 175 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信