有没有一种方法可以在Java中设置变量的边界?
例如,我可以有一个变量吗有没有一种方法可以在Java中设置变量的边界?,java,bounds,Java,Bounds,例如,我可以有一个变量吗 int x; 告诉编译器x永远不能大于20或小于-20,而不必编写一个方法来检查循环中每次迭代的值?(我应该在这里提到这是一个基于向量的游戏的速度变量。不,你必须在你的程序中手动检查它。assert-20
int x;
告诉编译器x永远不能大于20或小于-20,而不必编写一个方法来检查循环中每次迭代的值?(我应该在这里提到这是一个基于向量的游戏的速度变量。不,你必须在你的程序中手动检查它。
assert-20assert -20 < x && x < 20 : "Out of range!";
使用-ea参数执行时,java将检查条件,如果不使用-ea,性能将处于最佳状态
如果断言未被验证,则将抛出仅通过setter方法设置变量。在此方法中,如果试图将值设置为超出范围,则抛出异常。请注意,这在编译器方面不起作用,而是在运行时起作用,我认为这类检查在运行时是必要的。在何处您需要在问题中描述的情况下进行迭代?您需要滚动您自己的BoundedInt类。Bounded
IllegalArgumentException
。好的,谢谢。我接受这个答案这是第一次,其他人只是证实了你所说的。