用矩阵实现switch case + if else条件

时间:2013-07-23 12:58:16

标签: matrix java-6

我有2个枚举,

public enum CASES { CASE1, CASE2, CASE3, CASE4 };

现在我必须实现如下的逻辑条件,

private CASES getCondition(final CASES firstLevel, final CASES secondLevel){
 Switch(firstLevel) {
      case CASE1: 
            if(secondLevel == CASES.CASE1)
              return CASES.CASE1;
            else if(secondLevel == CASES.CASE2)
              return CASES.CASE1;
            else if(secondLevel == CASES.CASE3)
              return CASES.CASE4;
            else 
              return CASE3;
      case CASE2: 
              // Some combination logic as above;
      case CASE3: 
              // Some combination logic as above;
      case CASE4: 
              // Some combination logic as above;
       }

}

由于这个条件太复杂了,我想用矩阵来实现。

  • 是否有人建议使用矩阵实现最佳方式?
  • 是否可以将枚举用作索引?
  • 使用EnumMap的EnumMap实现是一种可能的解决方案吗?
  • 此外,这种逻辑实现是否存在任何解决方案?

请帮忙。

0 个答案:

没有答案