如果这是我的枚举:
public enum Planet {
MERCURY (3.303e+23),
NEPTUNE (1.024e+26);
private final double mass; // in kilograms
Planet(double mass) {
this.mass = mass;
}
private double mass() {
return mass;
}
}
我可以访问类似的值
Planet.MERCURY.mass();
是否有机会将枚举定义为“双精度”并让
Planet.MERCURY;
返回双倍?
无论如何,我主要对调用的外观感兴趣,以确保代码可读性。
最佳答案
不能。用Java枚举表示是不可能的。我个人认为Planet.MERCURY.mass()
更具可读性。
我唯一想到的是,稍微提高可读性的是使质量public final
代替private final
并引用Planet.MERCURY.mass
,但是我会再三考虑。