如何在执行java代码时省略一些System.out/logging语句?

Roh*_*nga 1 java

在C++中,如果我们不希望某些语句编译成像assert函数调用一样的代码,我们通过#ifndef预处理器指令控制它们的编译.

我们如何用Java做到这一点?

我有一些System.out.println()语句用于调试,我想删除最终代码.

一种方法是使它们在布尔变量的影响下有条件地执行.有没有更好的方法呢?

由于我有一个java swing应用程序,我可以关闭System.out.println语句而不影响输出.这样做的方法是什么?

Art*_*cto 6

使用像slf4j这样的日志框架.您可以在调试中打印到控制台并省略生产中的所有内容,而无需重新编译应用程序.