Java:字符串数组;尝试将字符串作为代码执行

Java:字符串数组;尝试将字符串作为代码执行,java,arrays,string,Java,Arrays,String,是否可以执行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)

是否可以执行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

如果你使用java 6或更高,你可能想考虑这里找到的java编译器API:使用API,您应该能够编译和运行以字符串表示的代码

有人问了一个类似的问题,答案中包含了代码:


希望这有帮助

Java可能重复?不。不过,您可以执行JavaScript。这将用于评估。很难相信没有办法做到这一点。@TJF什么是RFT??你想做什么呢?也许有一种替代的方法,IBM的RationalFunctionalTester。我正在做回归测试,希望能够添加代码,比如一个文本文件,并让程序运行,而不必进入Java并添加代码。因此文本文件将有代码来测试一个链接,如果我想测试另一个链接,我可以将它附加到文件中,而不必进入java代码。