我感到奇怪的是,泛型List<T>
包含方法Remove
以按值删除元素,但不包含重载
它需要一个IComparer<T>
和一个值,并且仅依赖默认的相等比较器在列表中查找元素。最近
我使用List<T>
来保存SortedList<K,V>
to make the later bounded的键,并意识到在从两个列表中删除元素时
我无法使用SortedList<K,V>.Comparer
来确保两个列表是同步的。如何将丢失的重载实现为扩展方法?
public static bool Remove<T>(this List<T> source, T item, IComparer<T> comparer)
{
// TODO
}