C#-এ List<T>.InsertRange(int index, IEnumerable<T> collection) মেথড একটি কালেকশনের সব এলিমেন্ট নির্দিষ্ট ইনডেক্স থেকে শুরু করে লিস্টে ইনসার্ট করে। বিদ্যমান এলিমেন্টগুলো ডানদিকে শিফট হয়।
উদাহরণ ১: স্ট্রিং List-এ InsertRange
using System;
using System.Collections.Generic;
public class Demo {
public static void Main(String[] args) {
string[] strArr = { "John", "Tom", "Kevin", "Mark", "Gary" };
List list = new List(strArr);
Console.WriteLine("লিস্ট-এ এলিমেন্টসমূহ...");
foreach (string str in list) {
Console.WriteLine(str);
}
strArr = new string[] { "Demo", "Text" };
Console.WriteLine("নতুন এলিমেন্ট রেঞ্জে ইনসার্ট করা...");
list.InsertRange(3, strArr);
foreach (string res in list) {
Console.WriteLine(res);
}
}
}
আউটপুট
লিস্ট-এ এলিমেন্টসমূহ... John Tom Kevin Mark Gary নতুন এলিমেন্ট রেঞ্জে ইনসার্ট করা... John Tom Kevin Demo Text Mark Gary
উদাহরণ ২: ইন্টিজার List-এ InsertRange
using System;
using System.Collections.Generic;
public class Demo {
public static void Main(String[] args) {
int[] intArr = { 10, 20, 30, 40, 50 };
List list = new List(intArr);
Console.WriteLine("লিস্ট-এ এলিমেন্টসমূহ...");
foreach (int i in list) {
Console.WriteLine(i);
}
intArr = new int[] { 300, 400, 500 };
Console.WriteLine("নতুন এলিমেন্ট রেঞ্জে ইনসার্ট করা...");
list.InsertRange(2, intArr);
foreach (int res in list) {
Console.WriteLine(res);
}
}
}
আউটপুট
লিস্ট-এ এলিমেন্টসমূহ... 10 20 30 40 50 নতুন এলিমেন্ট রেঞ্জে ইনসার্ট করা... 10 20 300 400 500 30 40 50
ব্যাখ্যা: InsertRange O(n + m) সময় নেয় (n = লিস্টের আকার, m = ইনসার্ট করার এলিমেন্ট সংখ্যা)। এটি অ্যারে, লিস্ট, বা যেকোনো IEnumerable<T> গ্রহণ করে। একাধিক Insert কল করার চেয়ে দ্রুত এবং সুবিধাজনক। ইনডেক্স ০-ভিত্তিক এবং বৈধ রেঞ্জে হতে হবে।