0

The statement after decreases has to get strictly smaller in each loop and always be non-zero. But does it have to reach 0? Does it have to get smaller by one?

4

1 回答 1

4

JML 文档中所述减少(您也可以写为减少)意味着具有该说明符的 int 或 long 表达式“在执行循环时必须不小于 0,并且每次必须减少至少一 (1)绕圈。”

所以它可能会或可能不会达到0,但不能小于0。此外,它必须至少变小,但不一定完全变小。请注意文档中的示例以获得更准确的解释。

于 2015-03-05T13:06:01.853 回答