ฉันเขียนสิ่งนี้:
public static class EnumerableExtensions
{
public static int IndexOf<T>(this IEnumerable<T> obj, T value)
{
return obj
.Select((a, i) => (a.Equals(value)) ? i : -1)
.Max();
}
public static int IndexOf<T>(this IEnumerable<T> obj, T value
, IEqualityComparer<T> comparer)
{
return obj
.Select((a, i) => (comparer.Equals(a, value)) ? i : -1)
.Max();
}
}
แต่ฉันไม่รู้ว่ามันมีอยู่แล้วใช่ไหม?
ToList()/FindIndex()
ดำเนินเคล็ดลับที่ดีที่สุด
Max
วิธีการก็คือว่ามันช่วยให้มองและ b: มันส่งกลับที่ผ่านมาดัชนีเมื่อมีซ้ำกัน (คนมักจะคาดหวังว่าดัชนีแรก)