EnumMap JDK5 में पेश किया गया है। यह Enum को मानचित्र में कुंजी के रूप में उपयोग करने के लिए डिज़ाइन किया गया है। यह मानचित्र इंटरफ़ेस का कार्यान्वयन भी है। EnumMap की सभी कुंजी समान एनम प्रकार की होनी चाहिए। EnumMap में, कुंजी शून्य नहीं हो सकती है और कोई भी यह NullPointerException को फेंक देगा।
जावा डॉक्स के अनुसार -
EnumMap आंतरिक रूप से सरणियों के रूप में उपयोग करते हुए, यह प्रतिनिधित्व अत्यंत कॉम्पैक्ट और कुशल है।
हैश मैप मैप इंटरफेस का कार्यान्वयन भी है। इसका उपयोग डेटा को Key और Value फॉर्म में स्टोर करने के लिए किया जाता है। इसमें एक नल कुंजी और एकाधिक शून्य मान हो सकते हैं। हैश मैप में, कुंजियाँ एक आदिम प्रकार नहीं हो सकती हैं। जावा हैश मैप कार्यान्वयन बुनियादी संचालन (प्राप्त करें और डालें) के लिए निरंतर-समय का प्रदर्शन प्रदान करता है, यह मानते हुए कि हैश फ़ंक्शन बाल्टी के बीच तत्वों को ठीक से फैलाता है।
<टेबल> <थेड>वें> <वें शैली ="पाठ-संरेखण:केंद्र;">कुंजी
वें> <वें शैली ="पाठ-संरेखण:केंद्र;"> EnumMap
वें> <वें शैली ="पाठ-संरेखण:केंद्र;"> हैश मैप
वें>
1पी>
बुनियादी
एनम प्रकार की कुंजियों के साथ उपयोग के लिए एक विशेष मानचित्र कार्यान्वयन
हैश मैप मैप इंटरफेस का कार्यान्वयन भी है।
2पी>
नल कुंजी
इसमें नल कुंजी नहीं हो सकती।
इसमें एक नल कुंजी और एकाधिक शून्य मान हो सकते हैं
3पी>
प्रदर्शन
सभी ऑपरेशन निरंतर समय में निष्पादित होते हैं इसलिए यह हैश मैप से तेज है
यह हैश मैप से धीमा है
4.
आंतरिक कार्यान्वयन
यह आंतरिक रूप से ऐरे का उपयोग करता है
यह आंतरिक रूप से हैशटेबल का उपयोग करता है
5.
आदेश देना
EnumMap चाबियों को उनकी चाबियों के प्राकृतिक क्रम में संग्रहीत करता है
हैश मैप का आदेश नहीं दिया गया है