我正在尝试HashMap
使用CircuitId class
. CircuitId 类包含一个 String clci 成员,并且该类hashCode()/equals()
基本上使用 clci 成员的hashCode()/equals()
.
我想这样做,以便我可以使用简单的字符串来查找地图,而无需将字符串转换为CircuitId
对象来查找地图。但它不起作用,我认为因为HashMap
使用这种评估形式(key==null ? k==null : key.equals(k))
,其中 key 是输入键,k 是地图中的键条目,特别是 key.equals(k) 部分。我想知道为什么 HashMap 没有这样做k.equals(key)
?
(至少这样,我认为我正在尝试做的事情会奏效。)但事实并非如此,这样做有诀窍吗?