Java AutoboxingLong, Integer, Double
पर मानचित्र बनाने की अनुमति देता है और फिर उन्हें आदिम मूल्यों का उपयोग करके संचालित करता है। उदाहरण के लिए:
java.util.HashMap<String, Integer> map = new java.util.HashMap<String, Integer>();
map.put("one", 1); // 1 is an integer, not an instance of Integer
आप एक नक्शा अलग आदिम प्रकार में संग्रहीत करना चाहते हैं, तो आप इसे एक Map<String, Number>
बनाकर कर सकते हैं। के मूल्यों को संग्रहीत करने देता BigDecimal
, BigInteger
, Byte
, Double
, Float
, Integer
, Long
, Short
(और AtomicLong
, AtomicInteger
)।
यहाँ एक उदाहरण है:
"जावा आदिम नक्शे"
Map<String, Number> map = new HashMap<String, Number>();
map.put("one", 1);
map.put("two", 2.0);
map.put("three", 1L);
for(String k:map.keySet()) {
Number v = map.get(k);
System.err.println(v + " is instance of " + v.getClass().getName() + ": " + v);
}
यह अस्पष्ट होने के लिए मेरी गलती थी। मैं क्या कहता हूं कि मैं एक आदिम प्रकार होने के लिए मूल्य को बाधित करना चाहता हूं, मेरा मतलब है कि मैं चाहता हूं कि किसी भी प्राचीन प्रकार को उस विशिष्ट मानचित्र में किसी मान के रूप में उपयोग करने की अनुमति दें। – Prospero