这篇文章主要介绍了Java中如何使用枚举表示一组字符串,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Java枚举表示一组字符串public class H
这篇文章主要介绍了Java中如何使用枚举表示一组字符串,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
public class HelloWorld { public static void main(String []args) { System.out.println("Hello World!");System.out.println(Season.spring.toString());System.out.println(Season.SPRING.value()); }}enum Season {SPRING("spring"), SUMMER("summer"), AUTUMN("autumn"), WINTER("winter");public final String value;private Season(String value) {this.value = value;}public String value() {return this.value;}}
程序输出结果如下:
Hello World!
SPRING
spring
规范使用枚举类
public enum StatEnum { SUCCESS(1,"成功"), FAILD(0,"失败"), REPEAT(-1,"重复"), INNER_ERROR(-2,"系统异常"), DATA_ERROR(-3,"数据异常"); private int state; private String stateInfo; StatEnum(int state, String stateInfo) { this.state = state; this.stateInfo = stateInfo; } public int getState() { return state; } public String getStateInfo() { return stateInfo; } public static StatEnum stateOf(int index){ for(StatEnum state: values()){ if(state.getState() == index){ return state; } } return null; }}
枚举搭配接口一起使用
// 定义接口public interface CodeEnum { Integer getCode(); String getMessage();}
// 定义枚举public enum StatusEnum implements CodeEnum { SUCCESS(0, "成功"), DAILD(1, "失败"); private Integer code; private String message; StatusEnum(Integer code, String message) { this.code = code; this.message = message; } @Override public Integer getCode() { return code; } @Override public String getMessage() { return message; }}
// 定义工具类public class EnumUtil { public static <T extends CodeEnum> T getByCode(Integer code, Class<T> enumClass) { for (T each: enumClass.getEnumConstants()) { if (code.equals(each.getCode())) { return each; } } return null; }}
使用:
EnumUtil.getByCode(0, StatusEnum.class).getMessage()EnumUtil.getByCode(1, StatusEnum.class).getCode()
感谢你能够认真阅读完这篇文章,希望小编分享的“Java中如何使用枚举表示一组字符串”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!
--结束END--
本文标题: Java中如何使用枚举表示一组字符串
本文链接: https://www.lsjlt.com/news/279534.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
2024-05-16
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0