通过“空 if 语句”,我的意思是这样的(注意分号):
if (condition);
我在考虑为此申请时遇到了麻烦。使用 while 循环,您可以执行以下操作:
while (callUntilReturnsFalse());
但是没有这样的 if 语句应用。更重要的是,Java 编译器在遇到这样的语句时不会发出错误或警告。这可能会导致大而无声的问题,尤其是对于冗长而复杂的陈述:
if ((functionA() && functionB(getFoo()) ||
checkForComplexCondition(arg1, arg2, getBar(getFoo())));
{
doStuff();
}
我的问题是:为什么在 Java 中允许这样做?而且,更重要的是,我可以启用一个选项以在发生这种情况时发出警告吗?
(这个问题之前被问过关于 C#,它确实发出警告,但我希望找到一种方法来用 Java 引起警告。)