gpt4 book ai didi

java - 用 Java 重写条件语句

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:46:27 26 4
gpt4 key购买 nike

假设我有下面的代码,它基本上是在确定某些条件是否匹配,然后分配 boolean 值,然后运行一些代码。如果 booleanValue 为 false,则抛出异常。如果我希望它在 booleanValue 为 false 时立即抛出异常而不运行其余代码怎么办?如果我只是将第二个条件语句放入第一个条件语句中,将会出现重复代码。请告诉我一个聪明的方法来做到这一点(我已经修改了代码,使其看起来像我的实际代码)。

boolean booleanValue = false;
Permission value;

if (someCondition) {
value = getPermission_1();
booleanValue = someMethod(value);
useValue_1(value);
}
else {
value = getPermission_2();
booleanValue = anotherMethod(value);

useValue_2(value);
}

if (!booleanValue) {
throw Exception();
}

最佳答案

如何消除 boolean 变量?您可以像这样重写代码:

if (someCondition) {
if (!someMethod()) {
throw new Exception();
}
some codes...
}
else {
if (!anotherMethod()) {
throw new Exception();
}
some codes...
}

在我看来这看起来更容易,但这样的事情是一个品味问题......

额外优势:如果异常在堆栈跟踪中结束,您就会知道条件是什么,因为您有两个不同的抛出语句。这可能会加快调试速度。

关于java - 用 Java 重写条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3340202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com