此博文并非深层的见解,仅仅是在项目中需要用到,记录下来,以帮助正好有需要的朋友。
今儿突然需要自己定义枚举类,虽说关于枚举大家都是耳熟能详的东西,并非多复杂的东西,但今天突然定义的时候,发生了十分尴尬的事情!唉,平时直接用习惯了,瞬间怀疑起自己是否是假程序员。
搜索大堆资料后发现,各位大牛技术深湛,导致于如此简单的东西我反而看不明白了,其实我只想知道一个简单的枚举类如何定义。
来来来:
public enum UserRealnameCheckEnum { /** * 未处理 */ UNTREATED, /** * 审核通过 * */ AUDIT_SUCCESS, /** * 审核未通过 * */ AUDIT_FAILURE;}最简单的,可以拿去用了 … (^o^)/~
我信了你的邪,妈de数据库要存一个数进去而非字符串!
ok,改版升级:
public enum UserRealnameCheckEnum { /** * 此案例有问题,请勿copy,正例请往下看 */ /** * 未处理 */ UNTREATED(0), /** * 审核通过 * */ AUDIT_SUCCESS(1), /** * 审核未通过 * */ AUDIT_FAILURE(2);}我当时以为这样就ok了,现在想想真想给自己两耳巴子,无线个波浪红线浮现在我的眼前!
好吧,最后贴上正确示范:
public enum UserRealnameCheckEnum { /** * 未处理 */ UNTREATED(0), /** * 审核通过 * */ AUDIT_SUCCESS(1), /** * 审核未通过 * */ AUDIT_FAILURE(2); long val; UserRealnameCheckEnum (long val) { this.val = val; } public long getVal () { return val; }}看完是否瞬间觉得神清气爽?
是的,你没有看错,加上一个构造方法,一个get方法,就可以拿去愉快的玩耍了。 (关于 long val 仅仅是我程序需要如此定义,更多时候我们直接int val 便可)
简单例子,仅供参考,以此记录,避免之后再遇到如此尴尬!!
新闻热点
疑难解答