ম্যাপস

ম্যাপ হচ্ছে গো-এর এ্যাসোসিয়েটিভ ডাটা টাইপ। ম্যাপ এ আমরা একটি কি এর বিপরীতে একটি ভ্যালু স্টোর করি।

make ফাংশনটি ব্যবহার করে আমরা এভাবে একটি ম্যাপ তৈরি করতে পারি:

m := make(map[string]int)

ম্যাপ এর ক্ষেত্রে make ফাংশনটির ফরম্যাটটি হলো - map[ <কি-এর টাইপ> ] <ভ্যালু টাইপ>

কি-ভ্যালু সেট করা খুবই সহজ:

m["k1"] = 7
m["k2"] = 13
fmt.Println("map:", m)

আউটপুট:

map: map[k1:7 k2:13]

ভ্যালু রিট্রিভ করাও খুব জটিল নয়:

v1, pres := m["k1"]
fmt.Println("v1: ", v1)
fmt.Println("pres: ", pres)

ভ্যালু রিট্রিভ করার সময় প্রথম রিটার্ন ভ্যালুটি হয় ঐ কি-এর ভ্যালু। দ্বিতীয় রিটার্ন ভ্যালুটি হয় বুলিয়ান। এটি নির্দেশ করে ঐ কি-টি ম্যাপে ছিলো কিনা। এটির মাধ্যমে জিরো ভ্যালুর ক্ষেত্রে সহজে বোঝা যায় ঐ কি-এর ভ্যালু কি সত্যিই জিরো ভ্যালু নাকি ঐ নামে কোন কি-ই ছিলো না ম্যাপে। উপরের কোডটির আউটপুট হবে:

v1: 7
pres: true

ম্যাপ এর লেংথ জানতে আছে আমাদের পরিচিত len ফাংশনটি।

fmt.Println("len:", len(m))

আউটপুট:

len: 2

কোন আইটেম ডিলিট করতে রয়েছে delete ফাংশনটি:

delete(m, "k2")
fmt.Println("map:", m)

ডিলিট করার সময় ফাংশনে প্যারামিটার হিসেবে ম্যাপের নাম আর কোন আইটেম ডিলিট করতে হবে তার কি-টি দিতে হবে। এই কোডটির আউটপুট:

map: map[k1:7]