在Ruby中,您可以"var1".constantize
获取实际变量var1
。
Ruby也有Model.Send(“方法名称,参数可以在这里等”),它与实际调用该方法相同。
我想做什么......有点棘手......我希望在我的java应用程序中将字符串“var1 == var2”转换为实际变量,然后进行评估。
有办法做到这一点吗?
答案 0 :(得分:2)
在Java中,类似的行为是通过Reflection API实现的。但是,由于Java是一种编译语言,因此在编译时会删除局部变量(在方法,构造函数,参数等中)信息。 但是,您仍然可以完全访问类名,层次结构,方法和字段(类变量) 一个很好的起点是Object的Reflection API tutorial或getClass()方法。
答案 1 :(得分:2)
您是否考虑过使用JRuby?
关于你的问题:
答案 2 :(得分:0)
在Java中,如果您想要动态查找变量,通常会将它们放在Map中,并使用该Map的键进行查找。
你能否详细解释一下你想要做的事情,我怀疑你想要做的事情可以用不同的方式在Java中完成。