`

避免使用ordinal方法

    博客分类:
  • java
阅读更多
Effective Java(2nd)第31条
可以使用如下方法代替
public enum Ensemble {
 SOLO(1), DUET(2), QUINTET(5);

 private final int numberOfMusicians;

 Ensemble(int size) {
  this.numberOfMusicians = size;
 }

 public int numberOfMusicians() {
  return numberOfMusicians;
 }
 
 public static void main(String[] args){
  //Ensemble es = new Ensemble(2);
  System.out.println(Ensemble.QUINTET.numberOfMusicians);
 }
}


避免使用枚举的ordinal方法,而是把序数保存在一个实例域中。

Ensemble.SOLO就是枚举Ensemble的一个实例,可以使用枚举内的方法。
Ensemble.values()返回枚举数组可以用来遍历枚举
for(Ensemble e : Ensemble.values())
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics