Java 哪个映射实现的类允许插入重复的键对象?

Java 哪个映射实现的类允许插入重复的键对象?,java,Java,我们可以使用org.apache.common.collections.MultiValuesMap插入重复的密钥,除了它 有没有办法将重复的键插入到映射实现的类中 如果是,如何使用该类get()方法?是的,我们可以将重复键插入IdentityHashMap类 get()方法检查以下条件: if (key1==null ? key2==null : key1.equals(key2)).) 如果尝试使用与插入值相同的键引用检索值,则将获得该值。 但若您尝试使用差分键引用获取值(即使它相等),

我们可以使用org.apache.common.collections.MultiValuesMap插入重复的密钥,除了它

有没有办法将重复的键插入到映射实现的类中


如果是,如何使用该类get()方法?

是的,我们可以将重复键插入IdentityHashMap类

get()
方法检查以下条件:

if (key1==null ? key2==null : key1.equals(key2)).) 
如果尝试使用与插入值相同的键引用检索值,则将获得该值。 但若您尝试使用差分键引用获取值(即使它相等),您将得到null

例如:

// Created IdentityHashMap objects
 Map ihm = new IdentityHashMap();
// Inserting keys and values in IdentityHashMap Object
ihm.put(new String("key"), "RI Equation");
ihm.put(new String("key"), "Maxxton");

String rikey = new String("identityKey");
String mkey = new String("identityKey");

ihm.put(rikey, "RI Equation");
ihm.put(mkey, "Maxxton");

// Print IdentityHashMap after adding keys
System.out.println("IdentityHashMap after adding key :" + ihm);
System.out.println("Getting value from IdentityHashMap :"+ ihm.get("identityKey"));
System.out.println("Getting value from IdentityHashMap :"+ ihm.get(rikey));
System.out.println("Getting value from IdentityHashMap :"+ ihm.get(mkey));

是的,我们可以在IdentityHashMap类中插入重复的密钥

get()
方法检查以下条件:

if (key1==null ? key2==null : key1.equals(key2)).) 
如果尝试使用与插入值相同的键引用检索值,则将获得该值。 但若您尝试使用差分键引用获取值(即使它相等),您将得到null

例如:

// Created IdentityHashMap objects
 Map ihm = new IdentityHashMap();
// Inserting keys and values in IdentityHashMap Object
ihm.put(new String("key"), "RI Equation");
ihm.put(new String("key"), "Maxxton");

String rikey = new String("identityKey");
String mkey = new String("identityKey");

ihm.put(rikey, "RI Equation");
ihm.put(mkey, "Maxxton");

// Print IdentityHashMap after adding keys
System.out.println("IdentityHashMap after adding key :" + ihm);
System.out.println("Getting value from IdentityHashMap :"+ ihm.get("identityKey"));
System.out.println("Getting value from IdentityHashMap :"+ ihm.get(rikey));
System.out.println("Getting value from IdentityHashMap :"+ ihm.get(mkey));

@sachingajbhiye根据问题描述,上面的链接中没有确切的答案,那么为什么它被标记为重复。我错误地承认,我所期待的是你的ans是重复的。虽然你的答案在技术上是正确的,但我认为它没有任何实际应用。必须始终将引用传递给相同的键。因此,我还可以将正确的值存储在变量中。@sachingajbhiye根据问题描述,上面的链接中没有确切的答案,那么为什么它被标记为重复的。我错误地将您的答案确认为重复的,这是我所期望的。虽然您的答案在技术上是正确的,但我认为它没有任何实际应用。必须始终将引用传递给相同的键。因此,我还可以将正确的值存储在变量中。