java当一个语句被称为singleentry/singleexit时,它是什么?
我不确定我是否理解得很好,例如,Java中的if语句被称为单入口/单出口语句。 在其条件为真的情况下,这是否被视为其单一的进入点,如果为假,是否被视为其单一的退出点
if(someCondition)
doSomething();
非-(单输入/单输出)语句的示例是什么
你可以在下面搜索框中键入要查询的问题!
我不确定我是否理解得很好,例如,Java中的if语句被称为单入口/单出口语句。 在其条件为真的情况下,这是否被视为其单一的进入点,如果为假,是否被视为其单一的退出点
if(someCondition)
doSomething();
非-(单输入/单输出)语句的示例是什么
# 1 楼答案
很难想象现代高级语言有多个入口点,比如面向对象、抽象和封装;但是很容易看到一个方法有多个出口。例如:
# 2 楼答案
一个出口点方法(单出口):
双出口点法:
下面是Martin Fowler的书《重构》中的一段话:
在上述语句的示例中,比较这两种方法的代码:
还有几个出口点:
# 3 楼答案
并不是说我们总是只能在某一点上返回。在检查的上下文中,在函数的最顶端尽早返回可能会更干净。但是,如果函数到处都有返回语句,则可能导致可读性降低&;混乱
如果您看看上面答案https://stackoverflow.com/a/17295767/5143994(由Adam Siemion提供)中提供的两个代码示例,我马上就能看到嵌套问题。第一个示例(没有多次返回)可以写得更好(见下文)
上述方法的另一个优点是在最后,如果你想给结果添加一个共同的影响,你可以很容易地添加它。例如,现在你想在结束计算中增加20%的额外惩罚。
但在多重回报的情况下,增加这种共同影响将变得更加困难
# 4 楼答案
可能是一个例子:
或者什么的:
也要通读this文章