可能重复:
Convert String to code
Run piece of code contained in a String
有没有办法将变量(字符串)转换成一段代码? 我的字符串必须是可更改的(非静态) 如果你能解释一下这很好:D
答案 0 :(得分:2)
我假设您要创建一个带有一些Java语句的String
对象,并像执行方法一样执行内容。
不,这是不可能的,因为这意味着,java是一种解释性编程语言。事实并非如此。
您可以将该行与某种类模板合并(在另一个字符串上),将其存储到文件中,使用jdk编译(使用`Runtime.exec调用javac)并使用自定义类加载器加载该类,然后反映方法并希望最好。
使用相当新的Java Compiler API有一种相当复杂的方式,但我想,这远远超出了你的需求。 (并且必须有一些更复杂的技巧,因为eclipse IDE提供了允许执行Java语句的视图。)