Java-创建一个函数来创建一个名为=我们输入的字符串的变量?

Java-创建一个函数来创建一个名为=我们输入的字符串的变量?,java,Java,如何创建函数: 当我输入一个字符串“abc”时,这个函数会创建一个同名变量,如下所示:int abc=10 void func("abc"){ .......... } //I will have: int abc =10; 我做不到,有人帮帮我吗?这是可能的,但非常棘手。我不认为你真的需要你所描述的。您真正需要的是返回int值的方法(请不要是函数!),即 int func(String str) { return str.length(); } 现在您可以使用此方法: int i =

如何创建函数:

当我输入一个字符串“abc”时,这个函数会创建一个同名变量,如下所示:
int abc=10

void func("abc"){
..........
}
//I will have: int abc =10;

我做不到,有人帮帮我吗?

这是可能的,但非常棘手。我不认为你真的需要你所描述的。您真正需要的是返回int值的方法(请不要是函数!),即

int func(String str) {
   return str.length();
}
现在您可以使用此方法:

int i = func("abc"); 
此方法将返回3


如果您确实想在方法中创建in变量,以便在方法之外可以访问该变量,那么可以使用JDI(Java调试接口)。您可以连接到运行应用程序的JVM并执行几乎任何操作。但是,我认为这并不是您真正需要的。

您不能在Java中以这种动态方式创建变量。但是您可以使用
映射
,它允许您支持所需的内容。试试这个:

public class DynamicVariableUtil {
    private Map<String, Object> map = new HashMap<String, Object>();
    public void setVariable(String name, Object value) {
        map.put(name, value);
    }
    public Object getValue(String name) {
        return map.get(name);
    }
    ...
}

dynamicVariableUtil.createVariable("abc", 10);
...
dynamicVariableUtil.getValue("abc");
公共类DynamicVariableUtil{
私有映射映射=新的HashMap();
public void setVariable(字符串名称、对象值){
map.put(名称、值);
}
公共对象getValue(字符串名称){
返回map.get(name);
}
...
}
dynamicVariableUtil.createVariable(“abc”,10);
...
dynamicVariableUtil.getValue(“abc”);

这在Java中是不可能的,因为在PHP中不能有变量/动态变量名。为什么不将名称-值对存储在
映射中呢?为什么需要这样做,而不是只使用适合任何输入的变量名,或者如果绝对需要将某个值与该字符串关联,则使用映射?@delnan可能需要完成一些作业:您认为java中的指针如何?java没有C意义上的“指针”。根据您所描述的,您需要使用映射。哦,我有一个与字符串同名的变量。