একটি তালিকা সহ আপনি যা করতে পারেন:
list.AddRange(otherCollection);
কোনও হ্যাশসেটে অ্যাড রেঞ্জের পদ্ধতি নেই । হ্যাশসেটে অন্য সংগ্রহ যুক্ত করার সর্বোত্তম উপায় কী?
একটি তালিকা সহ আপনি যা করতে পারেন:
list.AddRange(otherCollection);
কোনও হ্যাশসেটে অ্যাড রেঞ্জের পদ্ধতি নেই । হ্যাশসেটে অন্য সংগ্রহ যুক্ত করার সর্বোত্তম উপায় কী?
উত্তর:
জন্য HashSet<T>
, নাম UnionWith
।
এটি স্বতন্ত্রভাবে HashSet
কাজগুলি নির্দেশ করে। আপনি Add
এলোমেলো উপাদানগুলির মতো এটির মতো নিরাপদে সেট করতে পারবেন না Collections
, কিছু উপাদান প্রাকৃতিকভাবে বাষ্পীভবন করতে পারে।
আমি মনে করি এটি UnionWith
"অন্যের সাথে মিশে যাওয়ার" পরে এর নামটি নিয়েছে HashSet
, তবে এটির জন্য একটি ওভারলোডও রয়েছে IEnumerable<T>
।
এটি একটি উপায়:
public static class Extensions
{
public static bool AddRange<T>(this HashSet<T> source, IEnumerable<T> items)
{
bool allAdded = true;
foreach (T item in items)
{
allAdded &= source.Add(item);
}
return allAdded;
}
}
HashSet
(এবংISet
) গাণিতিকভাবে সেট শব্দটি দিয়ে তৈরি হয়েছিল।UnionWith
নিকটতম শব্দ ছিল। ছাড়াExcept
, যা পরিষ্কারভাবে নামকরণ করা উচিতSubtract
গাণিতিকভাবে ভাষী।