Mat*_*hew 6 java enums tostring
我想覆盖toString()我的枚举,Color.但是,我无法弄清楚如何获取枚举Color内部实例的值Color.有没有办法在Java中这样做?
例:
public enum Color {
RED,
GREEN,
BLUE,
...
public String toString() {
// return "R" for RED, "G", for GREEN, etc.
}
}
Run Code Online (Sandbox Code Playgroud)
Erk*_*lat 18
public enum Color {
RED("R"),
GREEN("G"),
BLUE("B");
private final String str;
private Color(String s){
str = s;
}
@Override
public String toString() {
return str;
}
}
Run Code Online (Sandbox Code Playgroud)
您可以为Enums使用构造函数.我没有测试语法,但这是个主意.
mae*_*ics 15
您也可以打开类型this,例如:
public enum Foo {
A, B, C, D
;
@Override
public String toString() {
switch (this) {
case A: return "AYE";
case B: return "BEE";
case C: return "SEE";
case D: return "DEE";
default: throw new IllegalStateException();
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6533 次 |
| 最近记录: |