اذهب إلى المحتوى
  • 0

كيف أقارن 2 Lists لحذف العناصر غير المتشابهة بينهما في C#؟

OsamaSaif

السؤال

Recommended Posts

  • 0

يمكنك استخدام الدالة Contains والتي تُرجع قيمة boolean وتحدد فيما إذا كان العنصر ينتمي إلى السلسلة أم لا.

مثال ليكن لدينا 2 List في كل منهما مجموعة عناصر من بينها عناصر مشتركة لكلا المجموعتين:

  • List1: {"AAA","BBB","CCC"}
  • List2: {"BBB","CCC","DDD"}
 List<String> lst1 = new List<string> {"AAA","BBB","CCC" };
 List<String> lst2 = new List<string> { "BBB","CCC","DDD"};

يوجد قيمتين مشتركتين هما "BBB" و "CCC"

static void Main(string[] args)
        {
            List<String> lst1 = new List<string> { "AAA", "BBB", "CCC" };
            List<String> lst2 = new List<string> { "BBB", "CCC", "DDD" };

            List<String> finalLst = new List<string>();

            for (int i = 0; i < lst1.Count; i++)
            {
                if (!lst2.Contains(lst1[i]))
                {
                    finalLst.Add(lst1[i]);
                   // Console.WriteLine(finalLst);
                }
                else
                {
                    lst2.Remove(lst1[i]);
                }
            }
            finalLst.AddRange(lst2);

            for (int j = 0; j < finalLst.Count; j++)
            {
                Console.WriteLine("\t" +finalLst[j]);
            }
                Console.ReadLine();
        }

قمت بتطبيق حلقة التكرار على القائمة الأولى لإيجاد العناصر التي لا تنتمي للقائمة الثانية وإضافتها للقائمة الأخيرة finalLst، بعد ذلك قمت بحذف جميع العناصر التي تشترك مع القائمة الأولى lst1 من القائمة الثانية lst2.

ملاحظة: الدالة addRange() تُضيف القائمة كاملة؛ أي تقوم بإضافة كامل الـList إلى List أخرى.

النتيجة:

contains.thumb.png.aacf73b3526042e0032f3

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...