C#-এ অ্যারেতে নির্দিষ্ট ডাইমেনশনের সর্বোচ্চ ইনডেক্স পেতে Array.GetUpperBound(int dimension) মেথড ব্যবহার করা হয়। এক-মাত্রিক অ্যারেতে ডাইমেনশন ০, এবং সর্বোচ্চ ইনডেক্স = Length - ১। খালি অ্যারেতে -১ রিটার্ন করে।
উদাহরণ ১: স্ট্রিং অ্যারেতে প্রথম ও শেষ ইনডেক্স
using System;
public class Demo {
public static void Main() {
string[] products = new string[] { "Andy", "Mark", "Gary", "Andre" };
Console.WriteLine("এক বা একাধিক নাম 'A' দিয়ে শুরু হয় কি? = {0}",
Array.Exists(products, ele => ele.StartsWith("A")));
Console.WriteLine("অ্যারে ফিক্সড সাইজ? = " + products.IsFixedSize);
Console.WriteLine("অ্যারে রিড-অনলি? = " + products.IsReadOnly);
Console.WriteLine("অ্যারে সিঙ্ক্রোনাইজড? = " + products.IsSynchronized);
Console.WriteLine("প্রথম এলিমেন্টের ইনডেক্স = " + products.GetLowerBound(0));
Console.WriteLine("শেষ এলিমেন্টের ইনডেক্স = " + products.GetUpperBound(0));
}
}
আউটপুট
এক বা একাধিক নাম 'A' দিয়ে শুরু হয় কি? = True অ্যারে ফিক্সড সাইজ? = True অ্যারে রিড-অনলি? = False অ্যারে সিঙ্ক্রোনাইজড? = False প্রথম এলিমেন্টের ইনডেক্স = 0 শেষ এলিমেন্টের ইনডেক্স = 3
উদাহরণ ২: খালি অ্যারেতে ইনডেক্স
using System;
public class Demo {
public static void Main() {
string[] products = new string[] { };
Console.WriteLine("অ্যারে ফিক্সড সাইজ? = " + products.IsFixedSize);
Console.WriteLine("অ্যারে রিড-অনলি? = " + products.IsReadOnly);
Console.WriteLine("অ্যারে সিঙ্ক্রোনাইজড? = " + products.IsSynchronized);
Console.WriteLine("প্রথম এলিমেন্টের ইনডেক্স = " + products.GetLowerBound(0));
Console.WriteLine("শেষ এলিমেন্টের ইনডেক্স = " + products.GetUpperBound(0));
}
}
আউটপুট
অ্যারে ফিক্সড সাইজ? = True অ্যারে রিড-অনলি? = False অ্যারে সিঙ্ক্রোনাইজড? = False প্রথম এলিমেন্টের ইনডেক্স = 0 শেষ এলিমেন্টের ইনডেক্স = -1
ব্যাখ্যা: GetLowerBound(0) সবসময় ০ রিটার্ন করে (C#-এ অ্যারে ০-ভিত্তিক)। GetUpperBound(0).Length - ১ রিটার্ন করে। খালি অ্যারেতে Length = ০, তাই UpperBound = -১। মাল্টি-ডাইমেনশনাল অ্যারেতে প্রতিটি ডাইমেনশনের জন্য আলাদা আলাদা কল করতে হয়। এটি লুপ লিখতে বা বাউন্ড চেক করতে সাহায্য করে।