كيف يمكنني إزالة عنصر يطابق معايير معينة من LinkedList في C# ؟

StackOverflow https://stackoverflow.com/questions/133487

  •  02-07-2019
  •  | 
  •  

سؤال

لدي LinkedList ، حيث تم إدخال عضو يسمى معرف.أريد أن إزالة الإدخال من القائمة حيث الهوية يطابق قيمة البحث.ما هي أفضل طريقة للقيام بذلك ؟ أنا لا ترغب في استخدام إزالة () ، لأن الدخول.يساوي مقارنة الأعضاء الآخرين ، أريد فقط أن المباراة على الهوية.أتمنى أن تفعل شيئا مثل هذا:

entries.RemoveWhereTrue(e => e.id == searchId);

تحرير:شخص ما يمكن أن إعادة فتح هذا السؤال لي ؟ انها ليست مكررة - السؤال من المفترض أن يكون نسخة مكررة عن القائمة فئة.قائمة.RemoveAll لن يعمل - هذا جزء من القائمة فئة.

هل كانت مفيدة؟

المحلول

list.Remove(list.First(e => e.id == searchId));

نصائح أخرى

وهنا حل بسيط:

list.Remove(list.First((node) => node.id == searchId));

فقط استخدم فيها طريقة التمديد.سوف تحصل على قائمة جديدة (IIRC).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top