java enum从几开始_Java获取下一个枚举值或从第一个开始

参见英文答案 >

What’s the best way to implement `next` and `previous` on an enum type?                                    2个

我有一个Java的枚举如下:

public enum Cars

{

Sport,

SUV,

Coupe

}

我需要获得枚举的下一个值.所以,假设我有一个名为myCurrentCar的变量:

private Cars myCurrentCar = Cars.Sport;

我需要创建一个函数,在调用时将myCurrentCar的值设置为枚举中的下一个值.如果枚举不再有值,我应该将变量设置为枚举的第一个值.

我以这种方式开始实施:

public Cars GetNextCar(Cars e)

{

switch(e)

{

case Sport:

return SUV;

case SUV:

return Coupe;

case Coupe:

return Sport;

default:

throw new IndexOutOfRangeException();

}

}

这是有效的,但它是一个高维护功能,因为每次我修改枚举列表,我必须重构该功能.

有没有办法将枚举分割成一个字符串数组,获取下一个值并将字符串值转换为原始枚举?因此,如果我在数组的末尾,我只需抓住第一个索引

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值