我希望我的 Java 程序输出的第一行打印断言是否打开。我该怎么做呢?
编辑:一个额外的要求是程序在做有用的工作之前不应该终止。
try {
assert false;
System.out.println("Assertions disabled.");
}
catch(AssertionError ae) {
System.out.println("Assertions enabled.");
}
这个怎么样?我不知道Java,但我认为这可能有效:
try {
assert false;
System.out.println("assertions are disabled");
} catch (AssertionError e) {
System.out.println("assertions are enabled");
}
一个性能更好的解决方案(不抛出异常)是:
boolean assertionsEnabled = false;
assert (assertionsEnabled = true);