假设我有一个班级myClass
和一个String myString
. 我该怎么做:
myClass [value of myString] = new myClass;
Java 中不能有动态变量。不过,您可以使用 aMap<String, Object>
作为String myString
键并将新值设置为类的新实例:
Map<String, Object> map = new HashMap<String, Object>();
map.put(myString, new MyClass());
如果您确定您的地图将只包含MyClass
实例,那么您可以使用Map<String, MyClass>
.
Map<String, MyClass> map = new HashMap<String, MyClass>();
您不能将字符串变量的值用作变量名。Java 不允许这样做。
但是,使用 a Map
,您可以将字符串(作为键)关联到值:
Map<String, MyClass> map = new HashMap<String, MyClass>();
map.put(myString, new MyClass());
这并不完全是您正在寻找的东西,但在 Java 中,这与您将获得的一样接近。
使用地图存储您Object
的 s 索引String
public static void main(String[] args) {
final String myString = "something";
final Map<String, Object> map = new HashMap<String, Object>();
map.put(myString, new Object());
}
如何使用泛型并创建带有类型参数的基类
public MyGenClass<K,V>{
private Map<K,V> map = new HashMap<K,v>();
public Map<K,V> getMap(){
return map;
}
public void setMap(Map<K,V> iMap){
map=iMap;
}
}
使用这个类,你可以很容易地获得不同类型的地图,同时拥有相似的方法。
请享用 :)