Java 从地图中的对象检索值

Java 从地图中的对象检索值,java,object,map,Java,Object,Map,我正在写一个解释器程序,现在我被这个程序卡住了。 有一个整数和对象的映射: private Map<Integer, MJObject> objectHeap; objectHeap = new HashMap<Integer, MJObject>(); 我创建了一个新对象,并将其存储在一个带有引用整数的映射中 public Integer allocClassInstance(String className) MJObject object = new MJObj

我正在写一个解释器程序,现在我被这个程序卡住了。 有一个整数和对象的映射:

private Map<Integer, MJObject> objectHeap;

objectHeap = new HashMap<Integer, MJObject>();
我创建了一个新对象,并将其存储在一个带有引用整数的映射中

public Integer allocClassInstance(String className)
MJObject object = new MJObject(symTab, className);
objectHeap.put(nextFree, object);
然后从另一个只使用MJObject引用的方法中,我需要检索MJObject内部的类名。我该怎么做?谢谢你的帮助

然后从另一个只使用MJObject引用的方法中,我需要检索MJObject内部的类名。我该怎么做

如果您已经获得了
MJObject
,则该贴图是不相关的。假设
MJObject
以某种方式使构建它时使用的类名可访问,那么您只需要以下内容:

String className = mjObject.getClassName();

如果您实际尝试在映射中获取与该
MJObject
关联的键,则必须迭代映射-或者可能使用反向映射创建第二个映射(
MJObject
整数
).

主要问题是,我不知道是否允许创建一个额外的方法来从对象内部获取类名。还有其他方法吗?或者我应该试试看?@Gedas:我们真的猜不出你可以为你的任务做什么,我担心。您可以维护一个单独的
MJObject
String
映射,但这样做似乎很奇怪。
String className = mjObject.getClassName();