Java switch statement multiple cases

前端 未结 13 1159
后悔当初
后悔当初 2020-11-27 14:43

Just trying to figure out how to use many multiple cases for a Java switch statement. Here\'s an example of what I\'m trying to do:

switch (variable)
{
    c         


        
13条回答
  •  天涯浪人
    2020-11-27 14:57

    One alternative instead of using hard-coded values could be using range mappings on the the switch statement instead:

    private static final int RANGE_5_100 = 1;
    private static final int RANGE_101_1000 = 2;
    private static final int RANGE_1001_10000 = 3;
    
    public boolean handleRanges(int n) {
        int rangeCode = getRangeCode(n);
        switch (rangeCode) {
            case RANGE_5_100: // doSomething();
            case RANGE_101_1000: // doSomething();
            case RANGE_1001_10000: // doSomething();
            default: // invalid range
        }
    }
    
    private int getRangeCode(int n) {
        if (n >= 5 && n <= 100) {
            return RANGE_5_100;
        } else if (n >= 101 && n <= 1000) {
            return RANGE_101_1000;
        } else if (n >= 1001 && n <= 10000) {
            return RANGE_1001_10000;
        }
    
        return -1;
    }
    

提交回复
热议问题