小编典典
您 可以, 但 不可以 。
该 不该 部分:
您 不应该这样做,
因为以这种方式使用预处理器被认为是不好的开始,并且有更好且更多的Java惯用方式来解决此用例。
该 CAN 部分:(*)
Java本身不支持宏。另一方面,您可以像C / C ++编译链一样,通过C预处理器 (简称CPP)传递源代码。
这是一个演示:
src/Test.java :
#define READINT (new java.util.Scanner(System.in).nextInt())
class Test {
public static void main(String[] args) {
int i = READINT;
}
}
cpp 命令:
$ cpp -P src/Test.java preprocessed/Test.java
结果:
class Test {
public static void main(String[] args) {
int i = (new java.util.Scanner(System.in).nextInt());
}
}
编译:
$ javac preprocessed/Test.java
更好的解决方法:
您可以使用静态方法编写自己的实用工具类:
import java.util.Scanner;<