if的另一个实现思路

在一些场景中需要根据根据一个传入的额值来做不同的处理,而且if有很多层,此时如果一直写if代码就会雍容.一种比较好的方法就是写一个map列出与if对应的情况,然后map的value就能放一些方法或者其他变量.

没有出现if但是得到了if的效果,如果有else的话,那就是map.get(key)的情况,此时只要一个if就能解决.

public static Map<Long, String> intervalDaysRowkey;

    static {
        intervalDaysRowkey = new HashMap<Long, String>();
        intervalDaysRowkey.put(DAYS_2, HBaseUtil.COL_QUALIFIER_RETAINED_2DAYS_HOUR);
        intervalDaysRowkey.put(DAYS_3, HBaseUtil.COL_QUALIFIER_RETAINED_3DAYS_HOUR);
        intervalDaysRowkey.put(DAYS_4, HBaseUtil.COL_QUALIFIER_RETAINED_4DAYS_HOUR);
        intervalDaysRowkey.put(DAYS_5, HBaseUtil.COL_QUALIFIER_RETAINED_5DAYS_HOUR);
        intervalDaysRowkey.put(DAYS_6, HBaseUtil.COL_QUALIFIER_RETAINED_6DAYS_HOUR);
        intervalDaysRowkey.put(DAYS_7, HBaseUtil.COL_QUALIFIER_RETAINED_7DAYS_HOUR);
        intervalDaysRowkey.put(DAYS_15, HBaseUtil.COL_QUALIFIER_RETAINED_15DAYS_HOUR);
        intervalDaysRowkey.put(DAYS_30, HBaseUtil.COL_QUALIFIER_RETAINED_30DAYS_HOUR);

    }
原文地址:https://www.cnblogs.com/rocky-AGE-24/p/7440757.html