C#-এ SortedSet<T> একটি সর্টেড সেট কালেকশন যা ডুপ্লিকেট অনুমতি দেয় না। এর GetEnumerator() মেথড একটি SortedSet<T>.Enumerator স্ট্রাকচার রিটার্ন করে যা সর্টেড ক্রমেই এলিমেন্টগুলোর মাধ্যমে ইটারেট করতে সাহায্য করে।
উদাহরণ ১: স্ট্রিং SortedSet ইটারেট করা
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
SortedSet set1 = new SortedSet();
set1.Add("AB");
set1.Add("BC");
set1.Add("CD");
set1.Add("EF");
Console.WriteLine("SortedSet1-এ এলিমেন্টসমূহ...");
foreach (string res in set1) {
Console.WriteLine(res);
}
SortedSet set2 = new SortedSet();
set2.Add("BC");
set2.Add("CD");
set2.Add("DE");
set2.Add("EF");
set2.Add("AB");
set2.Add("HI");
set2.Add("JK");
Console.WriteLine("SortedSet2-এ এলিমেন্টসমূহ (এনুমারেটর দিয়ে)...");
SortedSet.Enumerator demoEnum = set2.GetEnumerator();
while (demoEnum.MoveNext()) {
string res = demoEnum.Current;
Console.WriteLine(res);
}
}
}
আউটপুট
SortedSet1-এ এলিমেন্টসমূহ... AB BC CD EF SortedSet2-এ এলিমেন্টসমূহ (এনুমারেটর দিয়ে)... AB BC CD DE EF HI JK
উদাহরণ ২: ইন্টিজার SortedSet ইটারেট করা
using System;
using System.Collections.Generic;
public class Demo {
public static void Main() {
SortedSet set1 = new SortedSet();
set1.Add(100);
set1.Add(200);
set1.Add(300);
set1.Add(400);
set1.Add(500);
set1.Add(600);
set1.Add(700);
Console.WriteLine("SortedSet2-এ এলিমেন্টসমূহ (এনুমারেটর দিয়ে)...");
SortedSet.Enumerator demoEnum = set1.GetEnumerator();
while (demoEnum.MoveNext()) {
int res = demoEnum.Current;
Console.WriteLine(res);
}
}
}
আউটপুট
SortedSet2-এ এলিমেন্টসমূহ (এনুমারেটর দিয়ে)... 100 200 300 400 500 600 700
ব্যাখ্যা: SortedSet<T>.Enumerator একটি স্ট্রাকচার (struct) যা বক্সিং এড়াতে সাহায্য করে। MoveNext() পরবর্তী এলিমেন্টে যেতে এবং Current বর্তমান এলিমেন্ট পেতে ব্যবহৃত হয়। SortedSet এলিমেন্টগুলো স্বয়ংক্রিয়ভাবে সর্টেড ক্রমে রাখে।