Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा हैश मैप क्लास का उपयोग कैसे करें

प्रोग्रामिंग में, डेटा प्रकारों का उपयोग विशेष प्रकार के डेटा को वर्गीकृत करने के लिए किया जाता है। प्रत्येक डेटा प्रकार को एक अलग तरीके से संग्रहीत किया जाता है, और डेटा प्रकार जिसमें एक मान संग्रहीत किया जाता है, वह संचालन निर्धारित करेगा जो मूल्य पर किया जा सकता है।

जब आप जावा में काम कर रहे होते हैं, तो आपके सामने आने वाली एक क्लास जावा हैश मैप क्लास हो सकती है। यह वर्ग संग्रह ढांचे का हिस्सा है और डेवलपर्स को मानचित्र डेटा प्रकार का उपयोग करके डेटा संग्रहीत करने की अनुमति देता है।

यह ट्यूटोरियल जावा हैश मैप्स की मूल बातों पर चर्चा करेगा, हैश मैप कैसे बनाएं, और उन मुख्य तरीकों का पता लगाएं, जिनका उपयोग हैश मैप क्लास के साथ काम करते समय किया जा सकता है। यह लेख पूरे उदाहरणों का उल्लेख करेगा ताकि हम हैश मैप वर्ग को अधिक गहराई से समझा सकें।

जावा मैप्स और हैश मैप

जावा मैप इंटरफेस का इस्तेमाल मैप वैल्यू को की/वैल्यू पेयर में स्टोर करने के लिए किया जाता है। कुंजियाँ अद्वितीय मान हैं जो किसी विशिष्ट मान से संबद्ध होते हैं। जावा में, मानचित्र में डुप्लिकेट कुंजियाँ नहीं हो सकती हैं, और प्रत्येक कुंजी को एक विशेष मान से संबद्ध होना चाहिए।

मानचित्र द्वारा प्रदान की जाने वाली कुंजी/मूल्य संरचना आपको उनकी कुंजियों के आधार पर मूल्यों तक पहुंचने की अनुमति देती है। इसलिए, यदि आपके पास gbp . कुंजी वाला नक्शा था और मान United Kingdom , जब आप कुंजी gbp . का संदर्भ देते हैं मूल्य "यूनाइटेड किंगडम" वापस कर दिया जाएगा।

हैश मैप वर्ग संग्रह ढांचे का हिस्सा है और आपको मानचित्र इंटरफ़ेस और हैश टेबल का उपयोग करके डेटा संग्रहीत करने की अनुमति देता है। हैश टेबल विशेष संग्रह होते हैं जिनका उपयोग कुंजी/मूल्य वस्तुओं को स्टोर करने के लिए किया जाता है।

इससे पहले कि हम एक हैश मैप बना सकें, हमें पहले हैश मैप पैकेज को आयात करना होगा। यहां बताया गया है कि हम इसे जावा प्रोग्राम में कैसे कर सकते हैं:

import java.util.hashmap;

81% प्रतिभागियों ने कहा कि बूटकैंप में भाग लेने के बाद उन्हें अपनी तकनीकी नौकरी की संभावनाओं के बारे में अधिक आत्मविश्वास महसूस हुआ। आज ही एक बूटकैंप से मिलान करें।

बूटकैंप शुरू करने से लेकर अपनी पहली नौकरी खोजने तक, औसत बूटकैंप ग्रेड ने करियर संक्रमण में छह महीने से भी कम समय बिताया।

अब जब हमने हैश मैप पैकेज आयात कर लिया है, तो हम जावा में हैश मैप बनाना शुरू कर सकते हैं।

हैश मैप बनाएं

जावा में हैश मैप बनाने के लिए, हम निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

HashMap<KeyType, ValueType> map_name = new HashMap<KeyType, ValueType>(capacity, loadFactor);

आइए इसे इसके मूल घटकों में विभाजित करें:

  • हैश मैप हमारे कोड को यह बताने के लिए प्रयोग किया जाता है कि हम हैशमैप घोषित कर रहे हैं।
  • <कुंजी प्रकार, मान प्रकार> क्रमशः कुंजियों और मानों के लिए डेटा प्रकारों को संग्रहीत करता है।
  • map_name हमारे द्वारा घोषित हैशमैप का नाम है।
  • नया हैश मैप<की टाइप, वैल्यू टाइप> हमारे द्वारा निर्दिष्ट डेटा प्रकारों के साथ हैश मैप को प्रारंभ करने के लिए हमारे कोड को बताता है।
  • क्षमता हमारे कोड को बताता है कि यह कितनी प्रविष्टियाँ संग्रहीत कर सकता है। डिफ़ॉल्ट रूप से, यह 16 पर सेट होता है। (वैकल्पिक)
  • लोडफैक्टर हमारे कोड को बताता है कि जब हमारी हैश तालिका एक निश्चित क्षमता तक पहुँच जाती है, तो मूल हैश तालिका के दोगुने आकार की एक नई हैश तालिका बनाई जानी चाहिए। डिफ़ॉल्ट रूप से, यह 0.75 (या 75% क्षमता) पर सेट होता है। (वैकल्पिक)

मान लीजिए कि हम एक स्थानीय मुद्रा विनिमय व्यवसाय के लिए एक कार्यक्रम बना रहे हैं। वे एक ऐसा प्रोग्राम बनाना चाहते हैं जो उन देशों के नाम और मुद्रा कोड संग्रहीत करता है जिसमें वे विनिमय सेवाएं प्रदान करते हैं। इस डेटा को स्टोर करने के लिए हैश मैप का उपयोग करना एक अच्छा विचार है क्योंकि हमारे पास दो आइटम हैं जिन्हें हम एक साथ स्टोर करना चाहते हैं:देश का नाम और मुद्रा कोड।

यहाँ वह कोड है जिसका उपयोग हम इस उद्देश्य के लिए हैश मैप बनाने के लिए करेंगे:

import java.util.HashMap;HashMap CurrencyCodes =new HashMap();

इस उदाहरण में, हमने currencyCodes . नामक एक हैश मैप घोषित किया है जो दो स्ट्रिंग मान संग्रहीत करता है। अब जब हमारे पास हैश मैप है, तो हम आइटम जोड़ना शुरू कर सकते हैं और इसकी सामग्री में हेरफेर कर सकते हैं।

आइटम जोड़ें

हैश मैप वर्ग कई प्रकार की विधियाँ प्रदान करता है जिनका उपयोग डेटा को संग्रहीत और हेरफेर करने के लिए किया जा सकता है। पुट () विधि का उपयोग कुंजी / मूल्य संरचना का उपयोग करके हैश मैप में मान जोड़ने के लिए किया जाता है।

आइए मुद्रा विनिमय पर वापस जाएं। मान लीजिए कि हम प्रविष्टि जोड़ना चाहते हैं GBP /United Kingdom हमारे कार्यक्रम में, जो यूके के लिए मुद्रा मूल्य संग्रहीत करेगा। GBP key को United Kingdom में मैप किया गया है इस उदाहरण में मूल्य। हम इस कोड का उपयोग करके ऐसा कर सकते हैं:

आयात करें CurrencyCodes.put ("GBP", "यूनाइटेड किंगडम");currencyCodes.put ("USD", "यूनाइटेड स्टेट्स"); System.out.println (मुद्रा कोड); }}

हमारे कोड में, हम currencyCodes . नामक हैश मैप को इनिशियलाइज़ करते हैं , फिर हम हैश मैप में एक प्रविष्टि जोड़ने के लिए पुट () विधि का उपयोग करते हैं। इस प्रविष्टि में कुंजी है GBP और मान United Kingdom . फिर हम हैश मैप के मूल्य का प्रिंट आउट लेते हैं, जो निम्नलिखित देता है:

{GBP=United Kingdom,USD=United States}

जैसा कि आप देख सकते हैं, हमारे हैश मैप में अब दो मान हैं:GBP=यूनाइटेड किंगडम और USD=यूनाइटेड स्टेट्स।

किसी आइटम तक पहुंचें

हैश मैप में किसी आइटम तक पहुंचने के लिए, आप प्राप्त () विधि का उपयोग कर सकते हैं। get विधि एक पैरामीटर स्वीकार करती है:उस मान का कुंजी नाम जिसे आप पुनर्प्राप्त करना चाहते हैं।

मान लीजिए हम GBP से जुड़े देश के नाम को पुनः प्राप्त करना चाहते हैं। हम इस कोड का उपयोग करके ऐसा कर सकते हैं:

… स्ट्रिंग जीबीपी =मुद्रा कोड। प्राप्त ("जीबीपी"); System.out.println(currencyCodes);… 

हमारा कोड रिटर्न:यूनाइटेड किंगडम।

Remove an Item

हैश मैप से किसी आइटम को हटाने के लिए रिमूव () मेथड का इस्तेमाल किया जाता है। हटाएं () एक पैरामीटर स्वीकार करता है:उस कुंजी का नाम जिसकी प्रविष्टि आप निकालना चाहते हैं।

मान लीजिए हम GBP को हटाना चाहते हैं हमारे हैश मैप से। हम इस कोड का उपयोग करके ऐसा कर सकते हैं:

…currencyCodes.remove("GBP");System.out.println(currencyCodes);…

जब हम अपना कोड चलाते हैं, GBP हमारे हैश मैप से हटा दिया गया है और निम्नलिखित प्रतिक्रिया लौटा दी गई है:{यूएसडी =संयुक्त राज्य}

इसके अलावा, हैश मैप से सभी वस्तुओं को हटाने के लिए स्पष्ट () विधि का उपयोग किया जाता है। clear() कोई पैरामीटर स्वीकार नहीं करता है। कार्रवाई में स्पष्ट () विधि का एक उदाहरण यहां दिया गया है:

…currencyCodes.clear();System.out.println(currencyCodes);…

हमारा कोड एक खाली हैश मैप लौटाता है: {} .

HashMap तत्वों को बदलें

प्रतिस्थापन () विधि का उपयोग किसी विशिष्ट कुंजी से जुड़े मान को नए मान से बदलने के लिए किया जाता है। replace() दो पैरामीटर स्वीकार करता है:उस मान की कुंजी जिसे आप बदलना चाहते हैं, और नया मान जिसके साथ आप पुराने मान को बदलना चाहते हैं।

मान लीजिए, उदाहरण के लिए, कि हम मान United Kingdom . को बदलना चाहते हैं Great Britain . के साथ हमारे हैश मैप में। हम इस कोड का उपयोग करके ऐसा कर सकते हैं:

… CurrencyCodes.replace("GBP", "ग्रेट ब्रिटेन") System.out.print(currencyCodes);…

जब हम अपना कोड निष्पादित करते हैं, तो कुंजी का मान GBP (जो United Kingdom . है इस मामले में) को Great Britain . से बदल दिया गया है और हमारा कार्यक्रम निम्नलिखित लौटाता है:

{GBP=ग्रेट ब्रिटेन,USD=संयुक्त राज्य अमेरिका}

हैश मैप के माध्यम से पुनरावृति करें

इसके अतिरिक्त, आप जावा में हैश मैप के माध्यम से पुनरावृति कर सकते हैं। हैश मैप तीन विधियाँ प्रदान करता है जिनका उपयोग हैश मैप के माध्यम से पुनरावृति करने के लिए किया जा सकता है:

  • कीसेट () का उपयोग हैश मैप में कुंजियों के माध्यम से पुनरावृति करने के लिए किया जाता है।
  • values() का उपयोग HashMap में मानों के माध्यम से पुनरावृति करने के लिए किया जाता है।
  • entrySet() का उपयोग हैश मैप में कुंजियों और मानों के माध्यम से पुनरावृति करने के लिए किया जाता है।

सबसे आसान तरीका है कि हम एक हैश मैप के माध्यम से पुनरावृति कर सकते हैं for-each . का उपयोग करना कुंडली। यदि आप प्रत्येक लूप के लिए जावा के बारे में अधिक जानने में रुचि रखते हैं, तो आप इस विषय पर हमारे ट्यूटोरियल को यहां पढ़ सकते हैं।

मान लीजिए कि हम अपने currencyCodes . में प्रत्येक मान का प्रिंट आउट लेना चाहते हैं "कंसोल में हैश मैप ताकि हम मुद्रा रूपांतरण व्यवसाय को उनके द्वारा प्रदान की जाने वाली मुद्राओं की एक सूची दिखा सकें जो हैश मैप में संग्रहीत हैं। हम ऐसा करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:

आयात करें CurrencyCodes.put ("GBP", "ग्रेट ब्रिटेन"); CurrencyCodes.put ("USD", "यूनाइटेड स्टेट्स"); के लिए (स्ट्रिंग मान:CurrencyCodes.values ​​()) {System.out.println(value); } }}

जब हम अपना कोड चलाते हैं, तो निम्नलिखित प्रतिक्रिया दी जाती है:

Great Britain

United States

हमारे कोड में, हम for-each . का उपयोग करते हैं currencyCodes.values() . की सूची में प्रत्येक आइटम के माध्यम से पुनरावृति करने के लिए लूप . फिर हम प्रत्येक आइटम को एक नई लाइन पर प्रिंट करते हैं।

यदि हम प्रत्येक कुंजी के माध्यम से पुनरावृति करना चाहते हैं और अपने हैश मैप में प्रत्येक कुंजी का नाम प्रिंट करना चाहते हैं, तो हम values() को बदल सकते हैं keySet() के साथ ऊपर हमारे कोड में। यहां बताया गया है कि हमारा कार्यक्रम क्या लौटाएगा:

GBP

USD

निष्कर्ष

जावा हैश मैप वर्ग का उपयोग कुंजी / मूल्य संग्रह संरचना का उपयोग करके डेटा को संग्रहीत करने के लिए किया जाता है। यह संरचना उपयोगी है यदि आप दो मानों को संग्रहीत करना चाहते हैं जो एक दूसरे से जुड़े होने चाहिए।

इस ट्यूटोरियल में हैश मैप्स की मूल बातें शामिल हैं। हमने आपको दिखाया कि हैश मैप कैसे बनाया जाता है, और कार्रवाई में सामान्य हैश मैप विधियों के कुछ उदाहरणों का पता लगाया। अब आप एक विशेषज्ञ की तरह जावा हैश मैप्स के साथ काम करने के लिए आवश्यक जानकारी से लैस हैं!


  1. जावा दिनांक को स्वरूपित स्ट्रिंग में कनवर्ट करने के लिए SimpleDateFormat क्लास का उपयोग कैसे करें?

    Java SimpleDateFormat वर्ग जावा स्ट्रिंग को दिनांक या दिनांक से स्ट्रिंग में कनवर्ट करने की सुविधा प्रदान करता है। उदाहरण आयात करें ()।समय निकालो(); // एक तिथि फॉर्मेटर बनाएं SimpleDateFormat फ़ॉर्मेटर =नया SimpleDateFormat (yyyy-MM-dd-hh.mm.ss); // दिनांक प्रारूप का उपयोग करके एक नया स्ट्रिंग बनाएं

  1. जावा में उप-पैकेज का उपयोग कैसे करें?

    उप-पैकेज उप-निर्देशिकाओं के समान हैं। एक उदाहरण पर विचार करें। कंपनी के पास एक com.apple.computers पैकेज था जिसमें एक Dell.java स्रोत फ़ाइल थी, यह इस तरह की उपनिर्देशिकाओं की एक श्रृंखला में समाहित होगी - ....\com\apple\computers\Dell.java संकलन के समय, कंपाइलर प्रत्येक वर्ग, इंटरफ़ेस और उसमें परिभा

  1. जावा में अन्य पैकेज में कक्षाओं का उपयोग कैसे करें

    आप एक उदाहरण का उपयोग करके इसे समझ सकते हैं जहां पेरोल पैकेज में एक बॉस वर्ग परिभाषित किया गया है। package payroll; public class Boss {    public void payEmployee(Employee e) {       e.mailCheck();    } } यदि कर्मचारी वर्ग पेरोल पैकेज में नहीं है? बॉस वर्ग को एक अल