任何使用枚举来定义一堆字符串常量的例子?该字符串可以包含特殊字符,如 -/etc?如何使用枚举来定义一堆字符串常量
回答
enum MyConstants {
STR1("some text"),
STR2("some other text");
private String value;
private MyConstants(String str) {
this.value = str;
}
public String getValue() {
return value;
}
}
然后使用它是这样的:
MyConstants.STR1.getValue();
我觉得这个页面会有所帮助: http://javahowto.blogspot.com/2006/10/custom-string-values-for-enum.html
简而言之:
public enum MyType {
ONE {
public String toString() {
return "this is one";
}
},
TWO {
public String toString() {
return "this is two";
}
}
}
与包含一串字符串的类相比,像这样使用枚举是否有优势? – user496949 2011-03-11 01:36:57
你想用字符串做什么?举例来说,枚举可以用在switch语句中,并且可以有方法(甚至可以不同于每个枚举) – 2011-03-11 01:38:36
String [] messages = {"maybe you", "better go with", "an array?"};
System.out.println (messages[1]);
如果没有进一步的知识 - e - 你为什么喜欢使用枚举?
因为它们更好。阅读此:http://download.oracle.com/javase/1.5.0/docs/guide/language/enums.html – iluxa 2011-03-11 01:43:47
更好的是什么?用于存储字符串?当然不是。 – 2011-03-11 01:45:13
对于编译时安全类型 - Joshua Bloch – sarahTheButterFly 2011-03-11 04:26:56
- 1. 如何使用枚举来定义另一个枚举?
- 2. 为什么使用字符串常量与枚举常量?
- 3. 将Hibernate实体中的枚举定义为常量字符串
- 4. Java枚举与字符串常量
- 5. 连接常量字符串和枚举
- 6. 枚举为字符串或字符串常量
- 7. 使用枚举来定义另一个枚举
- 8. 评估来自Intellisense中枚举的字符串常量
- 9. 如何在常量字符串中包含枚举值?
- 10. 如字符串使用枚举点网
- 11. 枚举的返回列表从字符串常量枚举的名字值
- 12. 如何将字符串项目放在一个枚举枚举的枚举映射的字符串?
- 13. 字符串枚举
- 14. 定义枚举常量身体JCodeModel
- 15. NSStringEncoding - 枚举到字符串枚举
- 16. C++:使用X宏来定义类内的枚举和字符串数组?
- 17. 获取整个枚举中的字符串,并返回枚举常量
- 18. 字符串值的符号常量的.NET枚举
- 19. 枚举常量
- 20. 使用枚举代替字符串
- 21. 使用字符串值枚举?
- 22. 如何定义枚举增量步骤?
- 23. 使用自定义字符串来定义符号变量
- 24. 如何从字符串创建枚举
- 25. 枚举如何返回枚举对象中枚举的字符串内容
- 26. 如何将字符串转换为正确的枚举常量(实现通用接口的多个枚举)?
- 27. 何时使用枚举/诠释常量
- 28. 在打字稿的枚举中使用字符串变量
- 29. 在java中使用数组常量定义枚举
- 30. 使用数组常量定义的枚举
为什么'toString()'而不是'getValue()'? – jtahlborn 2011-03-11 01:34:51
没有特别的理由。我只是展示了如何以类似于普通类的方式使用枚举,并且可以使用相同的模式存储多个枚举值的单个属性。 – iluxa 2011-03-11 01:42:25