LoveRead.info » Книги » Разная литература » Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен

Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен

Книгу Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен читаем онлайн бесплатно полную версию! Чтобы начать читать не надо регистрации. Напомним, что читать онлайн вы можете не только на компьютере, но и на андроид (Android), iPhone и iPad. Приятного чтения!

177 0 18:04, 26-08-2023
Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен
26 август 2023

Книга Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен читать онлайн бесплатно без регистрации

В 10-м издании книги описаны новейшие возможности языка C# 9 и .NET 5 вместе с подробным "закулисным" обсуждением, призванным расширить навыки критического мышления разработчиков, когда речь идет об их ремесле. Книга охватывает ASP.NET Core, Entity Framework Core и многое другое наряду с последними обновлениями унифицированной платформы .NET, начиная с улучшений показателей производительности настольных приложений Windows в .NET 5 и обновления инструментария XAML и заканчивая расширенным рассмотрением файлов данных и способов обработки данных. Все примеры кода были переписаны с учетом возможностей последнего выпуска C# 9.

    1 ... 42 43 44 45 46 47 48 49 50 ... 407
    Перейти на страницу:
    на результат условия. В следующем примере задействованы две формы условной операции:

    static void ConditionalRefExample()

    {

      var smallArray = new int[] { 1, 2, 3, 4, 5 };

      var largeArray = new int[] { 10, 20, 30, 40, 50 };

      int index = 7;

      ref int refValue = ref ((index < 5)

        ? ref smallArray[index]

        : ref largeArray[index - 5]);

      refValue = 0;

      index = 2;

      ((index < 5)

        ? ref smallArray[index]

        : ref largeArray[index - 5]) = 100;

      Console.WriteLine(string.Join(" ", smallArray));

      Console.WriteLine(string.Join(" ", largeArray));

    }

    Если вы не знакомы с ключевым словом ref, то переживать пока не стоит, т.к. оно будет подробно раскрыто в следующей главе. В первом примере возвращается ссылка на местоположение массива с условием, которая присваивается переменной refValue. С концептуальной точки зрения считайте ссылку указателем на позицию в массиве, а не на фактическое значение, которое в ней находится. Это позволяет изменять значение в позиции массива напрямую, изменяя значение, которое присвоено переменной refValue. Результатом установки значения переменной refValue в 0 будет изменение значений второго массива: 10,20,0,40,50. Во втором примере значение во второй позиции первого массива изменяется на 100, давая в результате 1,2,100,4,5.

    Использование логических операций

    Для выполнения более сложных проверок оператор if может также включать сложные выражения и содержать операторы else. Синтаксис идентичен своим аналогам в языках С (C++) и Java. Для построения сложных выражений язык C# предлагает вполне ожидаемый набор логических операций, которые описан в табл. 3.10.

    На заметку! Операции && и || при необходимости поддерживают сокращенный путь выполнения. Другими словами, после того, как было определено, что сложное выражение должно дать в результате false, оставшиеся подвыражения вычисляться не будут. Если требуется, чтобы все выражения вычислялись безотносительно к чему-либо, тогда можно использовать операции & и |.

    Использование оператора switch

    Еще одной простой конструкцией C# для реализации выбора является оператор switch. Как и в остальных основанных на С языках, оператор switch позволяет организовать выполнение программы на основе заранее определенного набора вариантов. Например, в следующем коде для каждого из двух возможных вариантов выводится специфичное сообщение (блок default обрабатывает недопустимый выбор):

    // Switch on a numerical value.

    static void SwitchExample()

    {

      Console.WriteLine("1 [C#], 2 [VB]");

      Console.Write("Please pick your language preference: ");

                    // Выберите предпочитаемый язык:

      string langChoice = Console.ReadLine();

      int n = int.Parse(langChoice);

      switch (n)

      {

        case 1:

          Console.WriteLine("Good choice, C# is a fine language.");

                       // Хороший выбор. C# - замечательный язык.

          break;

        case 2:

          Console.WriteLine("VB: OOP, multithreading, and more!");

                       // VB: ООП, многопоточность и многое другое!

          break;

        default:

          Console.WriteLine("Well...good luck with that!");

                       // Что ж... удачи с этим!

          break;

      }

    }

    На заметку! Язык C# требует, чтобы каждый блок case (включая default), который содержит исполняемые операторы, завершался оператором return, break или goto во избежание сквозного прохода по блокам.

    Одна из замечательных особенностей оператора switch в C# связана с тем, что вдобавок к числовым значениям он позволяет оценивать данные string. На самом деле все версии C# способны оценивать типы данных char, string, bool, int, long и enum. В следующем разделе вы увидите, что в версии C# 7 появились дополнительные возможности. Вот модифицированная версия оператора switch, которая оценивает переменную типа string:

    static void SwitchOnStringExample()

    {

      Console.WriteLine("C# or VB");

      Console.Write("Please pick your language preference: ");

      string langChoice = Console.ReadLine();

      switch (langChoice.ToUpper())

      {

        case "C#":

          Console.WriteLine("Good choice, C# is a fine language.");

          break;

        case "VB":

          Console.WriteLine("VB: OOP, multithreading and more!");

          break;

        default:

          Console.WriteLine("Well...good luck with that!");

          break;

      }

    }

    Оператор switch также может применяться с перечислимым типом данных. Как будет показано в главе 4, ключевое слово enum языка C# позволяет определять специальный набор пар "имя-значение". В качестве иллюстрации рассмотрим вспомогательный метод SwitchOnEnumExample(), который выполняет проверку switch для перечисления System.DayOfWeek. Пример содержит ряд синтаксических конструкций, которые пока еще не рассматривались, но сосредоточьте внимание на самом использовании switch с типом enum; недостающие фрагменты будут прояснены в последующих главах.

    static void SwitchOnEnumExample()

    {

      Console.Write("Enter your favorite day of the week: ");

                  // Введите любимый день недели:

      DayOfWeek favDay;

      try

      {

        favDay = (DayOfWeek) Enum.Parse(typeof(DayOfWeek), Console.ReadLine());

      }

      catch (Exception)

      {

        Console.WriteLine("Bad input!");

                        // Недопустимое входное значение!

        return;

      }

      switch (favDay)

      {

      case DayOfWeek.Sunday:

          Console.WriteLine("Football!!");

                          // Футбол! !

          break;

        case DayOfWeek.Monday:

          Console.WriteLine("Another day, another dollar");

                          // Еще один день, еще один доллар.

          break;

        case DayOfWeek.Tuesday:

          Console.WriteLine("At least it is not Monday");

                          // Во всяком случае, не понедельник.

          break;

        case DayOfWeek.Wednesday:

          Console.WriteLine("A fine day.");

                          // Хороший денек.

          break;

        case DayOfWeek.Thursday:

          Console.WriteLine("Almost Friday...");

                          // Почти пятница...

          break;

        case DayOfWeek.Friday:

          Console.WriteLine("Yes, Friday rules!");

                          // Да, пятница рулит!

          break;

        case DayOfWeek.Saturday:

          Console.WriteLine("Great day indeed.");

                          // Действительно великолепный день.

          break;

      }

      Console.WriteLine();

    }

    Сквозной проход от одного оператора case к другому оператору case

    1 ... 42 43 44 45 46 47 48 49 50 ... 407
    Перейти на страницу:
    1. Жалоба
    Отзывы - 0

    Прочитали книгу? Предлагаем вам поделится своим отзывом от прочитанного(прослушанного)! Ваш отзыв будет полезен читателям, которые еще только собираются познакомиться с произведением.


    Уважаемые читатели, слушатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

    • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
    • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
    • 3. Просьба отказаться от нецензурной лексики.
    • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

    Надеемся на Ваше понимание и благоразумие. С уважением, администратор LoveRead.info.


    Установить VPN и читай слушай бесплатно

    Новые отзывы

    1. Лариса Лариса04 июнь 12:43 Да, просто до слез похоже на сериал ,,Даррел,,... Смерть в райском уголке - Эмили Салливан
    2. Stmara Stmara02 июнь 22:44 Приятная история, чтобы скоротать вечер. Любимая книга из последних "Любовь со смертью", также очень понравилась -"Суженная... Сердце космического дракона - Ольга Вадимовна Гусейнова
    3. Alex Alex01 июнь 17:12 💩💩💩🖕🖕🖕🖕🖕🖕🖕... Игровой момент II - Александр Андреевич Бодров
    Все комметарии
    Новинки бесплатной онлайн библиотеки