Person pers2 = new Person("Павлов", 35, 2100); OneLinkList<string, Person> list2 = new OneLinkList < string, Person>(); list2.add("Савл", pers1); list2.add( "Павел", pers2); if (list2.findstart("Павел")) Console.WriteLine ("Павел - найдено!"); else Console.WriteLine("Павел - не найдено!"); if (list2.findstart("Савл")) Console.WriteLine ("Савл - найдено!"); else Console.WriteLine("Савл - не найдено!"); if (list2.findstart("Иоанн")) Console.WriteLine ("Иоанн - найдено!"); else Console.WriteLine("Иоанн - не найдено!"); Person pers3 = new Person("Иванов", 33, 3000); list2.add("Иоанн", pers3); list2.start(); Person pers = list2.Item(); pers.PrintPerson(); list2.findstart("Иоанн"); pers = list2.Item(); pers.PrintPerson(); }
Рис. 22.5. Поиск в списке с ограниченной универсальностью Обратите внимание на строки, где создаются два списка: OneLinkList<int, string> list1 = new OneLinkList<int, string>(); OneLinkList<string, Person> list2 = new OneLinkList< string, Person>(); У списка list1 ключи имеют тип int, у списка list2 - string. Заметьте, оба фактических типа, согласно обязательствам, реализуют интерфейс IComparable. У первого списка тип элементов - string |