我是Java新手,我正在尝试了解如何使用Java设计电路。我找到了这段代码:
有人可以解释为什么要使用资产:
以下是示例:
assert(list.length == 2);
由于
答案 0 :(得分:2)
assert
是前置条件。也就是说,该方法在实际执行任何逻辑之前检查它是否被正确调用(带有2个参数)。这是一种常见模式(不够常见,我认为),以确定代码是否正确使用。您也可能会看到后置条件,它断言该方法返回的是有效结果(例如,不是null
或类似的)
第二行对2个参数执行AND动作(&&
) - 即它执行所需的实际逻辑。
我很惊讶接口允许将多个参数传递给门(多个输入),但该方法仅使用2个参数。您可以轻松地通过所有参数(在这种情况下,您可以完全避免断言)
答案 1 :(得分:0)
断言(...)只是意味着如果括号内的表达式为真,它什么都不做。如果表达式为false,则会引发错误。基本上,当它是假的时候,它告诉那些正在调用这种'ope'方法的人,他们给它的输入太少或太多。
'和'门就是你的想法。如果两个输入都为真,则返回true;如果两个输入都为假,则返回false。 return语句只是按预期对两个输入执行'和'(&&&)操作。