Map একটি ডেটা স্ট্রাকচার যা কীগুলোর সাথে মান সংরক্ষণ করে। প্রতিটি কীগুলোর সাথে একটি নির্দিষ্ট মান (value) সংযুক্ত থাকে, এবং Map এ কীগুলির মানগুলোর প্রতি অ্যাক্সেস, অনুসন্ধান, যোগ বা মুছে ফেলার জন্য বিভিন্ন অপারেশন করা যায়। স্কালা (এবং অন্যান্য ভাষায়) Map ডেটা স্ট্রাকচারটির মাধ্যমে কীগুলির সাথে সম্পর্কিত মানগুলির ওপর বিভিন্ন মৌলিক অপারেশন করা যায়, যেমন: Addition, Removal, এবং Lookup।
১. Addition (যোগ করা)
Map-এ নতুন কীগুলোর সাথে মান যোগ করার জন্য আমরা সাধারণত += অথবা put() ফাংশন ব্যবহার করি। এটি নতুন কীগুলোর জন্য মান সেট করে বা পুরোনো কীগুলোর জন্য নতুন মান আপডেট করে।
স্কালায় Map-এ মান যোগ করা:
// একটি Map তৈরি
val map = scala.collection.mutable.Map(1 -> "Apple", 2 -> "Banana")
// নতুন কীগুলোর সাথে মান যোগ করা
map += (3 -> "Cherry") // কীগুলোর সাথে মান যোগ করা
println(map) // Output: Map(1 -> Apple, 2 -> Banana, 3 -> Cherry)এছাড়া, আপনি কীগুলোর মান পরিবর্তন বা আপডেট করতে put() মেথডও ব্যবহার করতে পারেন।
map.put(2, "Blueberry") // কীগুলোর মান পরিবর্তন করা
println(map) // Output: Map(1 -> Apple, 2 -> Blueberry, 3 -> Cherry)২. Removal (মুছে ফেলা)
Map থেকে একটি নির্দিষ্ট কী এবং তার সাথে সম্পর্কিত মান মুছে ফেলার জন্য -= অপারেটর অথবা remove() মেথড ব্যবহার করা হয়।
স্কালায় Map-এ উপাদান মুছে ফেলা:
// একটি Map তৈরি
val map = scala.collection.mutable.Map(1 -> "Apple", 2 -> "Banana", 3 -> "Cherry")
// নির্দিষ্ট কী মুছে ফেলা
map -= 2 // কী 2 এবং তার মান মুছে ফেলা
println(map) // Output: Map(1 -> Apple, 3 -> Cherry)
// বা remove() মেথড ব্যবহার করা
map.remove(3)
println(map) // Output: Map(1 -> Apple)এছাড়া, remove() মেথডটি সাধারণত একটি অপারেশন সম্পাদন করতে পারে এবং মুছে ফেলা কীটি সফলভাবে মুছে ফেলার পর Option ধরনের মান ফেরত দেয়।
val removedValue = map.remove(1)
println(removedValue) // Output: Some(Apple), মান সফলভাবে মুছে ফেলা হলে৩. Lookup (অনুসন্ধান)
Map-এর মধ্যে একটি নির্দিষ্ট কী এর মান খুঁজে বের করার জন্য get() মেথড ব্যবহার করা হয়। এটি ঐ কী এর জন্য মান প্রদান করবে যদি সেটি বিদ্যমান থাকে, অথবা None ফেরত দেবে যদি কীটি পাওয়া না যায়।
স্কালায় Map-এ মান অনুসন্ধান করা:
// একটি Map তৈরি
val map = scala.collection.mutable.Map(1 -> "Apple", 2 -> "Banana", 3 -> "Cherry")
// get() মেথড ব্যবহার করে কী অনুসন্ধান করা
val value = map.get(2)
println(value) // Output: Some(Banana), যদি কীটি পাওয়া যায়
// যদি কীটি পাওয়া না যায়
val missingValue = map.get(4)
println(missingValue) // Output: None, যদি কীটি না পাওয়া যায়আপনি যদি শুধু মানটি চেয়ে থাকেন এবং আপনি নিশ্চিত যে কীটি বিদ্যমান, তবে সরাসরি apply() ব্যবহার করতে পারেন:
val value = map(2)
println(value) // Output: Bananaএটি যদি কোনো কী না পায়, তবে একটি NoSuchElementException ফেলে দেয়।
সারাংশ
Map এ কীগুলির সাথে সম্পর্কিত মান যোগ, মুছে ফেলা, এবং অনুসন্ধান করার জন্য যে মৌলিক অপারেশনগুলো ব্যবহার করা হয়, তা হলো:
- Addition (যোগ করা):
+=বাput()ব্যবহার করে নতুন কী এবং মান যোগ করা। - Removal (মুছে ফেলা):
-=বাremove()ব্যবহার করে কোনো কী এবং তার মান মুছে ফেলা। - Lookup (অনুসন্ধান):
get()বাapply()ব্যবহার করে কোনো কী এর মান খুঁজে বের করা।
এই অপারেশনগুলো Map ডেটা স্ট্রাকচারের মৌলিক কার্যাবলী যা ডেটার উপর সহজে কাজ করতে সাহায্য করে।
Read more