public MyCollection() { data = null; next = null; pred = null; }
public static MyCollection MakeStack(Place place) { MyCollection stack = new MyCollection(place); return(stack); }
static void Main(string[] args) { MyCollection <Person> myCol_1 = new MyCollection <Person>(); myCol_1.ShowCollection(); Console.WriteLine("Попробуем удалить:"); myCol_1.Remove(myCol_1[0]); Console.WriteLine("Добавим элементы типа Person и Employee:"); myCol_1.Add(new Person()); myCol_1.Add(new Person()); myCol_1.Add(new Employee()); myCol_1.Add(new Employee()); SetColor.ReversedBW("\nКоллекция:"); myCol_1.ShowCollection(); Console.WriteLine("\nТеперь создадим коллкцию на основе List<Person>:"); int size = 0; Console.WriteLine("Число элементов:"); List <Person> people = new List <Person>(); bool ok = Int32.TryParse(Console.ReadLine(), out size); if (ok) { for (int i = 0; i < size; i++) { people.Add(new Person()); } } else { throw new Exception("Invalid input."); } MyCollection <Person> myCol_2 = new MyCollection <Person>(people); SetColor.ReversedBW("Коллекция"); myCol_2.ShowCollection(); Employee emp = new Employee("Дроздов Н.В.", 40, "бухгалтер", "финансовый отдел"); Console.WriteLine("\nДобавление:"); myCol_2.Add(emp); SetColor.ReversedBW("\nТеперь коллекция выглядит так:"); myCol_2.ShowCollection(); SetColor.ReversedBW("\nПроверка работы foreach. Вывод коллекции:"); foreach (Person p in myCol_2) { Console.WriteLine(p); } Console.WriteLine("\nУдалим ранее добавленный элемент и элемент на третьей позиции:"); myCol_2.Remove(emp); myCol_2.Remove(myCol_2[2]); SetColor.ReversedBW("\nТеперь коллекция выглядит так:"); myCol_2.ShowCollection(); Console.WriteLine("\nПопробуем удалить уже удаленный элемент:"); myCol_2.Remove(emp); Console.WriteLine("Попробуем удалить элемент с индексом -4:"); myCol_2.Remove(myCol_2[-4]); Console.ReadKey(); }
public static MyCollection MakeList(int size) { int typeclass = random.Next(1, 4); MyCollection beg = new MyCollection(); switch (typeclass) { case 1: { Place place = new Place(); place.RandomCreate(); Console.WriteLine("The element {0} is adding...", place.ToString()); beg = MakeStack(place); } break; case 2: { Region region = new Region(); region.RandomCreate(); Console.WriteLine("The element {0} is adding...", region.ToString()); beg = MakeStack(region); } break; case 3: { City city = new City(); city.RandomCreate(); Console.WriteLine("The element {0} is adding...", city.ToString()); beg = MakeStack(city); } break; case 4: { Megapolis megapolis = new Megapolis(); megapolis.RandomCreate(); Console.WriteLine("The element {0} is adding...", megapolis.ToString()); beg = MakeStack(megapolis); } break; } for (int i = 1; i < size; i++) { typeclass = random.Next(1, 4); MyCollection point = new MyCollection(); switch (typeclass) { case 1: { Place place = new Place(); place.RandomCreate(); Console.WriteLine("The element {0} is adding...", place.ToString()); point = MakeStack(place); } break; case 2: { Region region = new Region(); region.RandomCreate(); Console.WriteLine("The element {0} is adding...", region.ToString()); point = MakeStack(region); } break; case 3: { City city = new City(); city.RandomCreate(); Console.WriteLine("The element {0} is adding...", city.ToString()); point = MakeStack(city); } break; case 4: { Megapolis megapolis = new Megapolis(); megapolis.RandomCreate(); Console.WriteLine("The element {0} is adding...", megapolis.ToString()); point = MakeStack(megapolis); } break; } point.next = beg; beg.pred = point; beg = point; } return(beg); }
public MyCollection(MyCollection <Train> c) { Count = c.Count; First = c.First; }