Поиск из "Массива обьектов класса" по свойствам(имени, дате.) - C#
Формулировка задачи:
Всем доброго времени суток.
Есть проблема такая, мне нужно например вывести из массива обьектов класса определенного человека
по имени или дате рождения на экран.Есть идея только перебором всего массива через цикл с условием проверки
но это мне кажется как то не кошерно, я читал можно через ключ какой то это сделать или как то по другому
и мне например нужно вывести на экран не весь массив а только одного человека от туда по имени
массив string _cmd отвечает за команды например ( show Дмитрий)
а Вот сам метод в классе который я вызываю
Буду очень благодарен за помошь
Посоветуйте как лучше.
вот примерно у меня есть массив в нем через конструктор лежат несколько данных
Листинг программы
- Student_Group[] Students = new Student_Group[3];
- Students[0] = new Student_Group("Иванов" , "Дмитрий" , DateTime.ParseExact("04.04.1992" , patternTime , null) , 1 , 1234567);
- ...
- ...
- ...
_cmd[0] - команда(show) _cmd[1] - имя
Листинг программы
- switch (_cmd[0])
- {
- . . .
- case "show":
- if ( _cmd[1] != null )
- Student_Group.Display_(/*Что вот тут надо написать*/);
- else
- Student_Group.Display_(Students);
- . . .
- }
Листинг программы
- public static void Display_(Student_Group[] _student )
- {
- try
- {
- Console.Clear();
- string[] Info = { "Фамилия" , "Имя" , "Возраст" , "Курс" , "Телефон" };
- Console.WriteLine("| {0,-12} {1,-12} {2,-15} {3,-10} {4,-9} |" , Info[0] , Info[1] , Info[2] , Info[3] , Info[4]);
- Console.WriteLine("+" + new string('-' , 66) + "+");
- for ( int i = 0 ; i < _student.Length ; i++ )
- {
- Console.WriteLine("| {0,-12} {1,-12} {2,-10:d}({3:##}) {4,-10} {5,-9:### ## ##} |" ,
- _student[i]._sure_name ,
- _student[i]._name ,
- _student[i]._date ,
- Math.Truncate(( DateTime.Now - _student[i]._date ).TotalDays / 365) ,
- _student[i]._course ,
- _student[i]._phone_number);
- }
- }
- catch ( Exception e )
- {
- Console.WriteLine(Ex(e));
- Console.ForegroundColor = ConsoleColor.White;
- Console.ReadLine();
- }
- Console.WriteLine();
- }
Решение задачи: «Поиск из "Массива обьектов класса" по свойствам(имени, дате.)»
textual
Листинг программы
- switch (_cmd[0])
- {
- . . .
- case "show":
- if ( _cmd[1] != null )
- Student_Group.Display_(Students, s => s._name == _cmd[1]);
- else
- Student_Group.Display_(Students);
- . . .
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д