Beispiel #1
0
        static void Main(string[] args)
        {
            List <string> list = new List <string>();

            list.Add("1");
            list.Add("2");
            list.Add("3");
            list.Add("4");
            list.Add(null);
            list.Add("5");

            list.RemoveNode(null);

            List <string> list2 = list.Copy();

            list2.Reverse();

            Console.WriteLine("Список:");

            try
            {
                Console.WriteLine(list.ToString());
                Console.WriteLine("\nНулевой элемент списка: {0}.", list.GetFirstNodeData());
                Console.WriteLine("Нулевой элемент списка со значением {0} заменен на 10.", list.SetData(0, "10"));
                Console.WriteLine("Нулевой элемент списка удален, его старое значение: {0}.", list.RemoveFirst());

                Console.WriteLine("\nСписок:");

                Console.WriteLine(list.ToString());
            }
            catch (ArgumentOutOfRangeException e)
            {
                Console.WriteLine(e.Message);
            }
        }
        static void Main(string[] args)
        {
            //Нужно уносить в отдельный класс.

            int[] array = { -1, 2, 3, 10, 56, 77, 88, 99 };      // Проверочный массив интов.

            List.List List = new List.List();                    // Создаём экземпляр нашего класса;



            // Тест AddNode.

            PrintText($"Тестируем метод AddNode, выводим List:");

            Console.ForegroundColor = ConsoleColor.Magenta;

            for (int i = 0; i < array.Length; i++)               // С помощью цикла за полняем значениями наш список;
            {
                int value = array[i];

                List.AddNode(value);                             // Используя метод AddNode, проверяем, работает ли FindNode;

                var allNodes = List.FindNode(value);

                Console.Write("{0} ", allNodes.Value);
            }

            Console.ResetColor();


            // Тест GetCount.

            int leigth = List.GetCount();                                                                    // Вызываем метод GetCount, выводим в консоль длинну;

            int countFromClass = List.count;

            Console.WriteLine();

            PrintText($"\nТестируем метод GetCount: GetCount = {leigth}, значение в классе {countFromClass}"); // Проверяем, работает ли GetCount;



            // Тест FindNode.

            var newNode = List.FindNode(10);

            PrintText($"Тестируем метод FindNode: {newNode.Value}");



            // Тест AddNodeAfter.

            List.AddNodeAfter(newNode, 1111);

            var addNode = List.FindNode(1111);

            PrintText($"Тестируем метод AddNodeAfter: {addNode.Value}");



            // Тест RemoveNode по значению.

            PrintText("Тестируем метод RemoveNode(Node):");

            PrintText("\n  List до удаления элемента:");

            Console.ForegroundColor = ConsoleColor.Magenta;

            for (int i = 0; i < List.count; i++)
            {
                Console.Write(" {0}", List.FindValueByIndex(i));
            }

            Console.ResetColor();

            Console.WriteLine();


            List.RemoveNode(List.FindNode(1111));


            PrintText("\n  List после удаления элемента:");

            Console.ForegroundColor = ConsoleColor.Magenta;

            for (int i = 0; i < List.count; i++)
            {
                Console.Write(" {0}", List.FindValueByIndex(i));
            }

            Console.ResetColor();

            Console.WriteLine();



            // Тест RemoveNode по индексу. Нужен общий метод.


            PrintText("\nТестируем метод RemoveNode(index):");

            PrintText("\n  List до удаления первого элемента:");

            Console.ForegroundColor = ConsoleColor.Magenta;

            for (int i = 0; i < List.count; i++)
            {
                Console.Write(" {0}", List.FindValueByIndex(i));
            }

            Console.ResetColor();

            Console.WriteLine();



            PrintText("\n  List после удаления первого элемента:");

            Console.ForegroundColor = ConsoleColor.Magenta;

            int first = 1;

            List.RemoveNode(first);

            for (int i = 0; i < List.count; i++)
            {
                Console.Write(" {0}", List.FindValueByIndex(i));
            }

            Console.ResetColor();

            Console.WriteLine();



            PrintText("\n  List после удаления последнего элемента:");

            Console.ForegroundColor = ConsoleColor.Magenta;

            int last = 7;

            List.RemoveNode(last);

            for (int i = 0; i < List.count; i++)
            {
                Console.Write(" {0}", List.FindValueByIndex(i));
            }

            Console.ResetColor();

            Console.WriteLine();



            PrintText("\n  List после удаления среднего элемента:");

            Console.ForegroundColor = ConsoleColor.Magenta;

            int middle = 4;

            List.RemoveNode(middle);

            for (int i = 0; i < List.count; i++)
            {
                Console.Write(" {0}", List.FindValueByIndex(i));
            }

            Console.ResetColor();

            Console.WriteLine();
        }