我只是想知道是否有任何方法可以摆脱Java块.它可以是任何块 - 如果是块,则是块,甚至是简单的{}.这是因为我经常遇到这种情况
{
retCode = performSomeThing();
if(retCode == SUCCESS)
{
retCode = performSomethingElse();
if(retCode == SUCCESS)
{
. . .
. . .
}
}
}
Run Code Online (Sandbox Code Playgroud)
这种多级缩进会使我编写的代码变得混乱.
相反,我需要一些方法来做到这一点
if((retCode = performSomething()) != SUCCESS)
GET_OUT_OF_BLOCK
if((retCode = performSomethingElse()) != SUCCESS)
GET_OUT_OF_BLOCK
Run Code Online (Sandbox Code Playgroud)
根据retCode的值,我将在块外执行任何所需的处理.如果它不涉及在try-catch块中编写该块,创建一个新的异常类型,抛出然后捕获它,那将会很好.
Kil*_*oth 20
要使用的正确结构是return.这意味着你的例子中的一个块应该是一个方法,但无论如何这是一个好主意 - 方法很长,它们包含多个复杂的控制流替代方案是反模式.帮自己一个忙,今天就切换到"每个方法一个目标"!<end of evangelism>
| 归档时间: |
|
| 查看次数: |
1790 次 |
| 最近记录: |