gpt4 book ai didi

java - 如何使两个子类作为Map中的键,其中键类型是父类

转载 作者:行者123 更新时间:2023-11-30 08:00:41 24 4
gpt4 key购买 nike

所以,我有一张 map ..

Map<Class<? extends ISwarmEntity>, Object>  map = new hashmap;

如果我有多个扩展 ISwarmEntity 的类,我无法将它们全部作为键放入映射中。我该如何去做呢?

示例:

Map.put(swarmmob1.class,1);
Map.put(swarmmob2.class,2);

Swarmmob1 将被 swarmmob2 覆盖

伙计们,它有效。对不起!!

最佳答案

您认为为什么它不起作用?有没有可能您犯了不同的错误,但泛型让您感到困惑?

import java.util.*;

class MapExtend {

public static void main (String[] a) {
Map<Class<? extends I>,Integer> map = new HashMap<>();
map.put (A.class, 1);
map.put (B.class, 2);
System.out.println (map.get(A.class));
System.out.println (map.get(B.class));
}

}

interface I {}

class A implements I {}

class B implements I {}

当我编译并运行该程序时,它首先输出 1,然后输出 2

关于java - 如何使两个子类作为Map中的键,其中键类型是父类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31969742/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com