Mam problem z List<T>.Reverse()
i Reverse(this IEnumerable<TSource> source)
. Spójrz na kod:Dlaczego funkcja IList <>. Reverse() nie działa tak jak Lista <>(). Odwróć
// Part 1
List<int> list = new List<int> { 1, 2, 3 };
foreach (int x in list)
Console.Write(x);
Console.WriteLine();
list.Reverse();
foreach (int x in list)
Console.Write(x);
Console.WriteLine();
list.Reverse();
// Part2
IList<int> ilist = list;
foreach (int x in list)
Console.Write(x);
Console.WriteLine();
ilist.Reverse();
foreach (int x in ilist)
Console.Write(x);
Console.WriteLine();
ilist.Reverse();
Mój wynik:
123
321
123
123
ponieważ Reverse()
-Part1 jest List<T>.Reverse()
, Reverse()
-Part2 jest Reverse(this IEnumerable<TSource> source)
Chcę wykonać List<int>.Reverse()
w part2 dla IList<int>
. Jak mogę to zrobić?
[Zgadzam się z Tobą, że jest to mylące.] (Http://stackoverflow.com/questions/2828917/most- niezręczna-myląca-metoda-w-sieci-api/2829051 # 2829051) –