gpt4 book ai didi

java - Map 的任何实现,即两个键?

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:17:00 26 4
gpt4 key购买 nike

我需要一个有两个键的 map ,例如

Map2<String /*ssn*/, String /*empId*/, Employee> _employees;

这样我就可以

_employees.put(e.ssn(), e.empId(), e)

后来

_employees.get1(someSsn);
_employees.get2(someImpId);

甚至

_employees.remove1(someImpId);

我不确定为什么我想停在两个,为什么不更多,可能是因为我现在需要的就是这种情况:-)但是类型需要处理固定数量的键以保证类型安全——类型参数不能是 vararg :-)

感谢任何关于为什么这是一个坏主意的指示或建议。

最佳答案

我想 main 键是 empId,所以我会用它作为键构建一个 Map,即 empId ---> 员工。所有其他唯一属性(例如 ssn)将被视为次要,并将使用单独的 Map 作为 empId< 的查找表(例如 ssn ---> empId)。

此实现使得添加/删除员工变得容易,因为您只需要更改一个 Map,即 empId ---> Employee;其他 Map 只能在需要时重建。

关于java - Map<K1, K2, V> 的任何实现,即两个键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/311103/

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