মডিউল পাঠ (1/2)
সেট এবং মানচিত্র
ArrayList ক্লাসের বাইরে (যা উপাদানগুলির একটি অর্ডারকৃত তালিকা উপস্থাপন করে), জাভা কালেকশন ফ্রেমওয়ার্ক আরও দুটি মৌলিক ইন্টারফেস অফার করে: সেট (অনন্য উপাদানগুলির জন্য) এবং মানচিত্র (কী-মানের অ্যাসোসিয়েশনের জন্য)।
সেট: অনন্য উপাদানের সংগ্রহ
একটি Set হল একটি সংগ্রহ যা ডুপ্লিকেট উপাদান ধারণ করতে পারে না। এটির সবচেয়ে সাধারণ বাস্তবায়ন হল HashSet, অভ্যন্তরীণভাবে একটি হ্যাশ টেবিলের উপর ভিত্তি করে, যা সন্নিবেশ, অপসারণ, এবং উপস্থিতি যাচাইকরণ ক্রিয়াকলাপের জন্য চমৎকার কর্মক্ষমতা নিশ্চিত করে৷
import java.util.HashSet;
import java.util.Set;
Set<String> uniqueNames = new HashSet<>();
uniqueNames.add("Alice");
uniqueNames.add("Bob");
uniqueNames.add("Alice"); // This insertion will be ignored since "Alice" is already present
System.out.println(uniqueNames.size()); // Prints 2মানচিত্র: কী-মান অ্যাসোসিয়েশন
একটি Map মানচিত্র অনন্য কী থেকে মান। এটিতে ডুপ্লিকেট কী থাকতে পারে না: প্রতিটি কী সর্বাধিক একটি মানের সাথে যুক্ত। এর আদর্শ বাস্তবায়ন হল HashMap।
import java.util.HashMap;
import java.util.Map;
Map<String, Integer> ageMap = new HashMap<>();
// Insert or update key-value pairs
ageMap.put("Alice", 25);
ageMap.put("Bob", 30);
// Retrieve value by key
int aliceAge = ageMap.get("Alice"); // Returns 25
// Verify if a key or value exists
boolean hasBob = ageMap.containsKey("Bob"); // Returns trueএকটি মানচিত্রের উপর পুনরাবৃত্তি
কী-মান জোড়ার উপর পুনরাবৃত্তি করতে, আমরা মানচিত্র দ্বারা প্রদত্ত এন্ট্রিগুলির সেটে (entrySet()) একটি for-each লুপ ব্যবহার করতে পারি।
for (Map.Entry<String, Integer> entry : ageMap.entrySet()) {
System.out.println(entry.getKey() + " is " + entry.getValue() + " years old.");
}নিজে চেষ্টা করে দেখুন
আইটেম নামের স্ট্রিংগুলির একটি হ্যাশসেট ঘোষণা করে কোডটি সম্পূর্ণ করুন। আবার 'আপেল', 'কলা' এবং 'আপেল' উপাদান যোগ করুন, তারপর System.out.println ব্যবহার করে সেটের আকার প্রিন্ট করুন।
ইঙ্গিত দেখান
মনে রাখবেন যে একটি `সেট`-এ নকল অনুমোদিত নয় এবং `items.size()` ঢোকানো অনন্য উপাদানের প্রকৃত সংখ্যা ফিরিয়ে দেবে।
সমাধান 3 প্রচেষ্টার পরে উপলব্ধ
স্ট্রিং কী এবং পূর্ণসংখ্যা মানের সাথে বয়সের নামের একটি হ্যাশম্যাপ ঘোষণা করে কোডটি সম্পূর্ণ করুন। 25 এর সাথে কী 'Alice' এবং 30 এর সাথে কী 'বব' যুক্ত করুন, তারপর ববের বয়স পুনরুদ্ধার করুন এবং মুদ্রণ করুন।
ইঙ্গিত দেখান
জোড়া সন্নিবেশ করতে `পুট` পদ্ধতি এবং কীগুলির উপর ভিত্তি করে মান পুনরুদ্ধার করতে `গেট` পদ্ধতি ব্যবহার করুন।
সমাধান 3 প্রচেষ্টার পরে উপলব্ধ
দেশের মানচিত্রে কী 'FR' আছে কিনা তা পরীক্ষা করে কোডটি সম্পূর্ণ করুন এবং বুলিয়ান ফলাফল প্রিন্ট করুন।
ইঙ্গিত দেখান
প্রয়োজনীয় কীটির উপস্থিতি পরীক্ষা করতে `দেশ` অবজেক্টে `containsKey` পদ্ধতি ব্যবহার করুন।
সমাধান 3 প্রচেষ্টার পরে উপলব্ধ