LINQ Reverse Method

LINQ Reverse Method


دالة Reverse() في LINQ مش بترتب البيانات، لكنها بتعكس ترتيب العناصر زي ما هي في الـ List أو Array. يعني أول عنصر بيبقى آخر واحد، وآخر عنصر بيبقى أول واحد.



✅ مثال 1: عكس الأرقام


List<int> numbers = new List<int>() { 1, 2, 3, 4, 5 };

var reversed = numbers.AsEnumerable().Reverse();

foreach (var num in reversed)
{
    Console.Write(num + " ");
}

📌 النتيجة: 5 4 3 2 1



✅ مثال 2: عكس النصوص


List<string> names = new List<string> { "Mahmoud", "Ahmed", "Ziad", "Sara" };

var reversed = names.AsEnumerable().Reverse();

foreach (var name in reversed)
{
    Console.WriteLine(name);
}

📌 النتيجة:


Sara  
Ziad  
Ahmed  
Mahmoud


⚠️ ملاحظات مهمة:

  • Reverse() لا يقوم بالترتيب، بل فقط يعكس الترتيب الحالي.
  • الدالة متوفرة لجميع أنواع IEnumerable<T>.
  • لو عايز ترتيب تنازلي حسب قيمة معينة، استخدم OrderByDescending().
  • لو عايز تعكس مجموعة قابلة للتعديل (List) نفسها، استخدم list.Reverse() بدون LINQ.


تعليقات

المشاركات الشائعة من هذه المدونة

C# - Arrays

Entity Framework - ما هو ORM؟ ونبذة عن Dapper وNHibernate

Entity Framework - مقدمة عن Entity Framework