gpt4 book ai didi

java - 对返回 HashMap 的方法使用泛型键

转载 作者:行者123 更新时间:2023-12-02 07:56:36 25 4
gpt4 key购买 nike

我有一个函数,它接受一个映射,其中键可以是多种类型,并且值始终是整数。我需要对值执行操作而忽略键并在最后返回映射。

public Map<Sometype, Integer> doSomething(Map<Sometype, Integer> map, Integer total) {
Map<Sometype, Integer> result = new HashMap<Sometype, Integer>();

for (Sometype key : map.keySet()) {
result.put(key, map.get(key) * 2);
}

return result;
}

映射键可以是整数、 boolean 值和枚举。有没有办法应用泛型,以便我可以将此方法用于任何 map 类型?

最佳答案

是的。您可以使您的方法在 Sometype 上通用。

public <Sometype> Map<Sometype, Integer> doSomething(
Map<Sometype, Integer> map, Integer total) {
Map<Sometype, Integer> result = new HashMap<Sometype, Integer>();
for (Sometype key : map.keySet()) {
result.put(key, map.get(key) * 2);
}
return result;
}

也可以这样写

public <T> Map<T, Integer> doSomething(Map<T, Integer> map, Integer total) {
Map<T, Integer> result = new HashMap<T, Integer>();
for (T key : map.keySet()) {
result.put(key, map.get(key) * 2);
}
return result;
}

关于java - 对返回 HashMap 的方法使用泛型键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27208839/

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