ম্যাপ হচ্ছে গো-এর এ্যাসোসিয়েটিভ ডাটা টাইপ। ম্যাপ এ আমরা একটি কি এর বিপরীতে একটি ভ্যালু স্টোর করি।
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]