IndexOutOfBounds构造函数中的异常

时间:2016-01-31 20:38:44

标签: java



rm -rf /{route_to_app}/app/cache/* /{route_to_app}/app/logs/*
tailf /dev/null




如果我有一个接受需要在[1,MAX中]的int参数的构造函数,如果参数不在区间内,我将如何正确使用IndexOutOfBOundsException?如果是,则为OBJ [] x数组分配内存。我以为我可以使用if else,但这不是相同的行为

2 个答案:

答案 0 :(得分:0)

为什么不,请使用if else?

为什么你不能尝试这样的事情..

try{
    //Your code
}catch(IndexOutOfBOundsException e){ 
     if(){ // your 1st cond
     }
     else if(){// your 2nd cond
     }
}

答案 1 :(得分:0)

我不明白为什么你需要一个异常,但如果你想进入那个catch块你必须抛出一个IndexOutOfBoundsException。然后你可以在catch块中做你想要的动作。

try {
        if (x < 1 || x > MAX)
            throw new IndexOutOfBoundsException();
    }

catch (IndexOutOfBoundsException e)

    {
        System.err.println("Index must be in 1 - MAX interval.");
        e.printStackTrace();
        //do what you want here
    }