在IF条件下调用方法是否可读?

med*_*pal 1 c# java coding-style

这种编写IF条件的方式是否在Java和C#语言中被认为是良好的编码风格?

if (checkIfIdInFirstRange()){
    //call Range1 handling method
}else if(checkIfIdInSecondRange()){
    //call Range2 handling method
}else{
    //call error handling method
}
Run Code Online (Sandbox Code Playgroud)

我想知道IF条件本身内部的方法,还是更好的做法:

int idInRange = getIdInRange();
//handle isInRange
Run Code Online (Sandbox Code Playgroud)

Dar*_*Teo 6

我觉得这很好.

更好的是,如果您将方法表达为问题,或者使用if语句进行流程

if (thisConditionIsTrue()){
    // Do this
}elseif(anotherConditionIsTrue()){
    // Do this instead
}elseif(isThisParameterOkay(someParameter)){
    // Yeh do this
}
Run Code Online (Sandbox Code Playgroud)

一些硬核纯粹主义者甚至会说如果你有3级压痕,你的方法太嵌套了,应该分成更小的方法.