
我下面有一个Enum课程
public class PTalkCommand {public enum Code { CLR((byte) 0), ACK((byte) 170), SER((byte) 0), NAK((byte) 0), TIMEOUT((byte) 255), DIP((byte) 173), REQUEST_CHECKSUM((byte) 162), REQUEST_STATUS((byte) 181), REQUEST_FLASH((byte) 166), REQUEST_CONfig_READ((byte) 249), REQUEST_STATUS_SCREEN((byte) 208), REQUEST_MulTIpulse_CONfig((byte) 0), REQUEST_SERIAL_NUMBER((byte) 62), REQUEST_BILL_nameS((byte) 64), DO_FLASH((byte) 161), DO_MOTOR((byte) 81), DO_SEND_EE_PROM_DATA((byte) 50), DO_ENTER_file_name((byte) 61), DO_ENTER_SERIAL_NUMBER((byte) 63), DO_CONfigURE((byte) 248), DO_MulTIpulse_CONfig((byte) 210), DATA_ColLECTION_RAW_SENSORS((byte) 84), DATA_ColLECTION_MODE((byte) 0), DATA_ColLECTION_CAL_POINTS((byte) 0), DATA_ColLECTION_WITH_DEBUG((byte) 68), DATA_ColLECTION_EXIT((byte) 119), CAliBRATE_OAS((byte) 150), CAliBRATE_NOTE_PRESENT_PUNCH((byte) 0), CAliBRATE_CB_REMOVED((byte) 0), CAliBRATE_IR_BLUE_TRANSMISSIVE((byte) 0), CAliBRATE_IR_REFLECTIVE((byte) 0), CAliBRATE_BLUE_REFLECTIVE((byte) 0), CAliBRATE_MONITOR_VolTAGES((byte) 0), STACKER_OR_STACKERLESS((byte) 158), CAliBRATE_CURVE_Lever((byte) 0), REQUEST_BEZEL_REV_LEV((byte) 73), DO_BEZEL_UPDATE((byte) 82); private final byte valueCode; private Code(byte value) { this.valueCode = value; } public byte getValue() { return valueCode; } }}并希望它以相反的顺序进行.在.Net中,代码就是这样
public voID Prepend (PTalkCommand.Code[] commands) { IEnumerable<PTalkCommand.Code> enumerable = commands.Reverse<PTalkCommand.Code> (); foreach (PTalkCommand.Code current in enumerable) { base.Insert (0, (byte)current); } }在Java中我也想尝试做同样的事情.
Enumeration<PTalkCommand.Code> enumerable = commands. ???????但是,我无法做到这一点.请告诉我如何在Java中做同样的事情?
解决方法:
有一个内置的.values()方法,它返回所有枚举常量的数组.你可以向后迭代它.
Code[] values = Code.values();for (int i = values.length - 1; i >= 0; i--) { Code next = values[i]; //do your thing} 总结 以上是内存溢出为你收集整理的java – 如何反转枚举?全部内容,希望文章能够帮你解决java – 如何反转枚举?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)