public override bool Equals(Object obj) { if (obj == null || GetType() != obj.GetType()) { return(false); } Crocodile <U, V> temp = (Crocodile <U, V>)obj; return(base.Equals(temp)); //return Name == temp.Name && //BodyLength == temp.BodyLength && //Weight == temp.Weight; }
{ /*Задание * 1. Создайте обобщенный интерфейс с операциями добавить, удалить, просмотреть. * 2. Возьмите за основу лабораторную № 4 «Перегрузка операций» и сделайте из нее обобщенный тип (класс) CollectionType<T>, * в который вложите обобщённую коллекцию. Наследуйте в обобщенном классе интерфейс из п.1. * Реализуйте необходимые методы. Добавьте обработку исключений c finally. Наложите какое-либо ограничение на обобщение. * 3. Проверьте использование обобщения для стандартных типов данных (в качестве стандартных типов использовать целые, вещественные и т.д.). * Определить пользовательский класс, который будет использоваться в качестве параметра обобщения. * Для пользовательского типа взять класс из лабораторной №5 «Наследование». * * Дополнительно: Добавьте методы сохранения объекта (объектов) обобщённого типа CollectionType<T> в файл и чтения из него.*/ /*Краткие теоретические сведения*/ static void Main(string[] args) { Queue <string> stringQueue = new Queue <string>(); Queue <int> intQueue = new Queue <int>(); Queue <int> intQueue2 = new Queue <int>(); string[] strmas = { "A", "B", "C", "D", "E", "F" };//char[] alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray(); foreach (string s in strmas) { stringQueue.Enqueue(s); } Console.WriteLine(); foreach (string stringItem in stringQueue) { Console.WriteLine(stringItem); } Console.WriteLine(); for (int i = 1; i <= 10; i++) { intQueue.Enqueue(i); intQueue2.Enqueue(i + 10); } Console.WriteLine(); foreach (int intItem in intQueue) { Console.WriteLine(intItem); } Crocodile <Queue <int>, string> operation = new Crocodile <Queue <int>, string>() { BodyLength = intQueue, Weight = intQueue2, Name = "GHIJKLM" }; Crocodile <int, string> operation2 = new Crocodile <int, string>() { BodyLength = 1234, Weight = 1312313, Name = "NOPQRSTU" }; int x = 12; int y = 45; Swap <int>(ref x, ref y); string s1 = "hello"; string s2 = "bye"; Swap <string>(ref s1, ref s2); Console.WriteLine($"\n x = {x}, y = {y} \n s1 = {s1}, s2 = {s2}"); Console.ReadKey(); }