Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中创建自定义变量的函数_Java_String_Eval - Fatal编程技术网

在java中创建自定义变量的函数

在java中创建自定义变量的函数,java,string,eval,Java,String,Eval,在Python中,这非常简单: def函数(变量名称、变量值): exec(str(变量名称)+“=”+str(变量值)) exec()将字符串转换为要运行的代码;在这种情况下,它会创建一个变量。我在Java中寻找类似的东西: static void method (String variable_name; String variable_value){ exec_eval_in_java("String " + variable_name + " =

在Python中,这非常简单:

def函数(变量名称、变量值):
exec(str(变量名称)+“=”+str(变量值))
exec()
将字符串转换为要运行的代码;在这种情况下,它会创建一个变量。我在Java中寻找类似的东西:

static void method (String variable_name; String variable_value){
     exec_eval_in_java("String " + variable_name + " = " + variable_value + ";");
}

如果编译并加载java类,则可以动态执行此操作:

String className = "package.myClass";
String code = "package package;\n" + 
    "public class myClass{}\n"
因此,您可以这样编写代码,然后:

Class class = CompilerUtils.CACHED_COMPILER.loadFromJava(className, code);
Runnable runnable= (Runnable) class.newInstance();
runnable.run();
你可以看看: 及


您还可以检查git hub

Java没有eval。Java中没有等价物。最接近的是一个字节码生成实用程序,如。@ElliottFrisch如何使用它?我是一个100%不适合初学者的初学者。因此,评论的开头是:“Java没有eval,Java中没有等价物。”Python中的坏主意,Java中更糟糕的想法。无论您实际需要做什么,这都不是解决问题的方法。您能给出一个提示/链接,指向提供
CompilerUtils
的库吗?