使用类作为键

时间:2016-05-18 14:36:38

标签: java dictionary

任何人都可以解释一下如何使用这种地图吗?

Map<Class, Set<Robot>>

其中Robot是一个定义机器人的类。感谢的。

2 个答案:

答案 0 :(得分:1)

使用Java Map Interface,您可以自由地使用Any Object作为Map的键。请参阅Map接口的documentation以获得更清晰的理解。 您只需按照以下方法即可归档上述内容。

示例中使用的变量和类:

  • 机器人 - 你的机器人课程
  • KeyClass - 您需要的类作为地图中的键。
  • robots - 一组Robot实例。

<强>代码 您可以使用以下代码初始化Map。

Map<Class, Set<Robot>> robotMap  = new HashMap<Class, Set<Robot>>();

您可以使用以下代码将元素插入地图。

robotMap.put(KeyClass.class, robots);

您可以使用以下代码从地图中读取元素。

robotMap.get(KeyClass.class);

答案 1 :(得分:0)

我认为答案在您编辑的问题中。

Map<Class, Set<Robot>> mapObj  = new HashMap<Class, Set<Robot>>();

根据以下示例,您可以编程

Map<Class, String> mapObj  = new HashMap<Class, String>();
        mapObj.put(String.class, "");
        mapObj.get(String.class);

您可以使用像

这样的Object类,而不是使用Class作为键
Map<Object, Set<Robot>> mapObj  = new HashMap<Object, Set<Robot>>();

当您迭代此地图时,您可以使用instaceof检查班级类型