গো ল্যাঙ্গুয়েজে এ্যারে হলো একই ধরনের আইটেমের সমষ্টি বা তালিকা । এবং এর আইটেম সংখ্যা নির্দিষ্ট থাকে । অর্থাৎ এ্যারে হয় ফিক্সড সাইজ ।
এ্যারে ডিফাইন করা খুবই সহজ । প্রথমে var
কিওয়ার্ড, এরপর ভ্যারিয়েবল এর নাম এবং শেষে স্কোয়ার ব্র্যাকেট []
এর মধ্যে এ্যারের সাইজ এবং ব্র্যাকেট শেষে এ্যারের টাইপ ।
var a [5]int
এখানে a
হলো একটি এ্যারে যেখানে আমরা ৫টি ইন্টিজার ভ্যালু সংরক্ষণ করতে পারি । গো ও জিরো বেইজড ইনডেক্স ফলো করে । অর্থাৎ প্রথম এলিমেন্টটির পজিশন হয় 0
। সুতরাং শেষ এলিমেন্টটি আমরা এ্যাক্সেস করতে পারি এভাবে -
a[4] = 100
fmt.Println("get:", a[4])
এখানে আমরা শেষ এলিমেন্টটির ভ্যালু হিসেবে 100
সেট করে দিচ্ছি । বিল্ট ইন len
ফাংশনটি ব্যবহার করে আমরা এ্যারের সাইজ জানতে পারি ।
fmt.Println("len:", len(a))
আমরা চাইলে এ্যারে ডিক্লেয়ারেশনের পর কার্লি ব্রেইসের মধ্যে আইটেম গুলো ডিফাইন করে দিতে পারি । এভাবে আমরা নিচের মত করে একই সাথে এ্যারে ডিক্লেয়ার এবং তার ভ্যালুগুলো সেট করে দেই:
b := [5]int{1, 2, 3, 4, 5}
fmt.Println("dcl:", b)
মাল্টিডাইমেনশনাল এ্যারের জন্য প্রয়োজনীয় সংখ্যক স্কোয়ার ব্র্যাকেট যোগ করে সেগুলোর মধ্যে ঐ ডাইমেনশনে আইটেম সংখ্যা নির্দেশ করলেই হয় । যেমন:
var twoD [2][3]int
আমরা এর ভ্যালু গুলো ফর লুপ ব্যবহার করে এ্যাসাইন করে দিতে পারি:
for i := 0; i < 2; i++ {
for j := 0; j < 3; j++ {
twoD[i][j] = i + j
}
}
fmt.Println("2d: ", twoD)
তবে সাধারনত গো তে আমরা এ্যারের চেয়ে স্লাইস বেশি ব্যবহার করে থাকি । পরবর্তী চ্যাপ্টারে আমরা স্লাইস নিয়ে দেখবো ।