是否可以以stings的形式执行代码数组? eval()不能用于我在RFT中执行此操作,而eval用于不用代码本身的方程式。
以下示例显示了我的目标:
private String[] code = new String[20];
int x = 0;
code[0] = "System.out.print("Hello World\n");";
code[1] = "x++;";
code[2] = "System.out.print(x);";
for(String s : code){
//execute the string as if it were code
}
因此输出
Hello World
1
答案 0 :(得分:2)
如果您使用的是Java 6或更高版本,则可能需要考虑此处的Java编译器API:http://www.javabeat.net/the-java-6-0-compiler-api/。使用API,您应该能够编译和运行表示为String的代码。
这是一个类似的问题,有人问过这个主题,包括答案中的代码:
希望这有帮助!