ご意見から私は入力から生徒の名前を読んで、特定の名前の学生を削除する必要があると結論づけます。
class Student {
public string Name { get; set; }
public int Number { get; set; }
public Student (string name, int number)
{
Name = name;
Number = number;
}
}
var students = new List<Student> {
new Student ("Daniel", 10),
new Student ("Mike", 20),
new Student ("Ashley", 42)
};
var nameToRemove = Console.ReadLine();
students.RemoveAll (s => s.Name == nameToRemove); // remove by condition
名前が付けられたすべての生徒が削除されることに注意してください。
あなたが彼を見つけるために、名前で最初に見つかった学生、最初の使用First
方法を削除し、インスタンスのRemove
を呼び出す必要がある場合:
var firstMatch = students.First (s => s.Name == nameToRemove);
students.Remove (firstMatch);
あなたは確実にしたい場合のみがあります指定された名前を持つ学生の彼を除去する前に、同様の方法でSingle
を使用します。
var onlyMatch = students.Single (s => s.Name == nameToRemove);
students.Remove (onlyMatch);
なおSingle
コール述部に一致する項目が1つも正確にない場合は、が失敗します。
これは全く話題にはなりませんが、自動実装されたプロパティの検討も検討してください。 http://msdn.microsoft.com/en-us/library/bb384054.aspx – inspite