ЧТО ТАКОЕ ПЕРЕЧИСЛЕНИЕ (ENUM) В ПРОГРАММИРОВАНИИ | ДЛЯ ЧЕГО НУЖЕН ENUM C# 😱

Sdílet
Vložit
  • čas přidán 8. 02. 2023
  • Сегодня в видео я вам расскажу что такое перечисление в программирований и покажу как можно создавать перечисление (enum).
    ----------------------------------------------------------------------------------------------------------------------------------
    ✅Поддержать канал (на Boosty много доп. контента которого на CZcams нету): Boosty - boosty.to/roadtosenior
    ----------------------------------------------------------------------------------------------------------------------------------
    Кроме примитивных типов данных в языке программирования C# есть такой тип как enum или перечисление. Перечисления представляют набор логически связанных констант.
    Объявление перечисления происходит с помощью оператора enum:
    enum название_перечисления
    {
    // значения перечисления
    значение1,
    значение2,
    .......
    значениеN
    }
    ----------------------------------------------------------------------------------------------------------------------------------
    Ресурсы по данной теме:
    1. learn.microsoft.com/ru-ru/dot...
    2. metanit.com/sharp/tutorial/2....
    3. cutt.ly/N3fsbmy
    4. professorweb.ru/my/csharp/cha...
    ----------------------------------------------------------------------------------------------------------------------------------
    ✅Наша группа в Telegram: t.me/senior_v_IT
    ✅Instagram: / sashok_543359
    ✅VK: sasha543359
    ----------------------------------------------------------------------------------------------------------------------------------
    ✅MetaMask кошелек (поддержать криптовалютой): 0xF3D906a4E4E8bA83831f2ea56EB5a8E2B20dbC39
    ----------------------------------------------------------------------------------------------------------------------------------
    #программирование #сишарп #урокипрограммирования

Komentáře • 25

  • @CryptoPaddincgron
    @CryptoPaddincgron Před rokem +1

    этой лучший канал по c# не забрасывай пж

  • @alexeyni722
    @alexeyni722 Před 9 měsíci +1

    брат, спасибо тебе большое:)

  • @user-ry3bu8yg4w
    @user-ry3bu8yg4w Před rokem +1

    Пишу комент для хайпа, надеюсь ролик залетит кому-то в реки

  • @flore8211
    @flore8211 Před 2 měsíci

    Привет, пришел сюда от симпл кода,жалко забросил и ты,но снимаете почти один в один контент. Пришел именно на этот видос так как не понял у симпла енам,здесь понял,но вот дз не очень. Енам то создашь на легке с такими же клавишами,что есть в консол кей. Только вот толку от этого нет) Ибо ридкей считывает консол кей и если попробовать привести твой енам к ридкею нихуя с этого не выйдет. Но вот обьяснил нормально

  • @freshhuk
    @freshhuk Před rokem +4

    Буду честен мне твой урок больше понравился чем у simple code

  • @fo4a299
    @fo4a299 Před rokem

    люблю задания спс

  • @user-tq2pe1ji8e
    @user-tq2pe1ji8e Před 5 měsíci

    лучшее объяснение, а то сколько можно уже

  • @pieshock5827
    @pieshock5827 Před rokem

    Чтобы не спойлерить, оставлю решение ДЗ в комментариях комментария

    • @pieshock5827
      @pieshock5827 Před rokem +1

      namespace Enum
      {
      enum KeyMove
      {
      A = 65,
      D = 68,
      S = 83,
      W = 87
      }
      internal class Program
      {
      static void Main(string[] args)
      {
      while (true)
      {
      KeyMove a = (KeyMove)Console.ReadKey().Key;
      switch (a)
      {
      case KeyMove.A:
      Console.WriteLine("
      Игрок идёт влево");
      break;
      case KeyMove.D:
      Console.WriteLine("
      Игрок идёт право");
      break;
      case KeyMove.W:
      Console.WriteLine("
      Игрок идёт вперёд");
      break;
      case KeyMove.S:
      Console.WriteLine("
      Игрок идёт назад");
      break;
      }
      }
      }
      }
      }

  • @cunning_jumper
    @cunning_jumper Před 8 měsíci

    Короче это что-то типа создания объекта, понятно.

  • @karimahmed6363
    @karimahmed6363 Před 7 měsíci

    Йэнам, йэнтер? страно звучит😅

  • @king_fox_3106
    @king_fox_3106 Před rokem

    Ого, да ты многого не знаешь. Существует еще такой класс в системе, Enum называется. Да, точно так же как и твоё перечисление. Много чего умеет, в том числе преобразовывать из текста в перечисление. Можно создать массив перечислений и много чего ещё интересного =)

    • @senior_v_IT
      @senior_v_IT  Před rokem +1

      Да но мы даже не изучали классы. Я не могу сразу к этому классу перейти так как мы с абсолютного нуля по очереди проходим все темы

    • @king_fox_3106
      @king_fox_3106 Před rokem

      @@senior_v_IT Это классика =)

  • @Firverkqz7
    @Firverkqz7 Před rokem

    Тело свитча в одну строку уместил case ConsoleKey.W:Console.WriteLine("Вы идете вперед");break;case ConsoleKey.S:Console.WriteLine( "Вы идете назад");break;case ConsoleKey.D:Console.WriteLine("Вы идете направо");break;case ConsoleKey.A: Console.WriteLine("Вы идете налево");break; Я гений?

    • @A_coder240
      @A_coder240 Před 10 měsíci

      да я тоже так сделал но будет легче с помощю goto key;

  • @safuzeplay9543
    @safuzeplay9543 Před 6 měsíci

    Решение:
    namespace Enum
    {
    enum Dvij
    {
    W,
    A,
    S,
    D
    }
    internal class Program
    {
    static void Main(string[] args)
    {
    while (true)
    {
    ConsoleKey dvij = Console.ReadKey().Key;
    switch (dvij)
    {
    case ConsoleKey.W:
    Console.WriteLine("Игрок идёт вперёд");
    break;
    case ConsoleKey.A:
    Console.WriteLine("Игрок идёт влево");
    break;
    case ConsoleKey.S:
    Console.WriteLine("Игрок идёт назад");
    break;
    case ConsoleKey.D:
    Console.WriteLine("Игрок идёт влево");
    break;
    }
    }
    }
    }
    }

    • @gopnikkasarj6797
      @gopnikkasarj6797 Před 5 měsíci

      не догадался бы, спс

    • @arsJS
      @arsJS Před 4 měsíci

      это не правильное решение задачи@@gopnikkasarj6797

    • @shotdan
      @shotdan Před 4 měsíci

      И смысл? Ты используешь enum ConsoleKey, а не свой Dvij.

    • @marginal4809
      @marginal4809 Před 26 dny

      @@shotdan {
      enum Dvij
      {
      Вперед,
      Назад,
      Налево,
      Направо,
      Стоп
      }
      static void Main(string[] args)
      {
      while (true)
      {
      ConsoleKey dvij = Console.ReadKey().Key;// Переменная типа ConsoleKey
      switch (dvij)
      {
      case ConsoleKey.W:
      Console.WriteLine("
      " + (Dvij)0);
      break;
      case ConsoleKey.A:
      Console.WriteLine("
      " + (Dvij)2);
      break;
      case ConsoleKey.S:
      Console.WriteLine("
      " + (Dvij)1);
      break;
      case ConsoleKey.D:
      Console.WriteLine("
      " + (Dvij)3);
      break;
      case ConsoleKey.Spacebar:
      Console.WriteLine("
      " + (Dvij)4);
      break;
      }
      }
      }
      вот так наверное имелось ввиду в задании

  • @Dm_Freyr
    @Dm_Freyr Před 11 měsíci

    А почему просто не использовать строки?

    • @VaultBoyVaultBoy
      @VaultBoyVaultBoy Před 9 měsíci +1

      *На проэкте где как минимум несколько человек работают используют enum, чтобы другой разработчик при написании кода не напридумывал лишней логики, которая повторяется, но под другим названием. К примеру один из разрабов сделает логику с проверкой на строку с названием "speed", а другой на строку velocity. Смысл то один, а код будет дублирован. А так ему скажут или в документации опишут, что есть для его нужд перечисление, он найдёт это перечисление и увидит какие уже существуют названия и просто к ним обратится при проверке, ну там if (fieldSelected == Details.Speed) { ... }*

    • @Dm_Freyr
      @Dm_Freyr Před 9 měsíci +1

      ​@@VaultBoyVaultBoyспасибо, за разбор!

  • @tizzireactions9197
    @tizzireactions9197 Před 5 dny

    enum Movement
    {
    W,
    A,
    S,
    D
    }
    while (true)
    {
    var key = Console.ReadKey().Key.ToString();
    if(Enum.TryParse(key, out Movement movement))
    {
    var tryKey = Enum.Parse(typeof(Movement), key);
    switch (tryKey)
    {
    case Movement.W:
    Console.WriteLine("Вы идёте вперёд");
    break;
    case Movement.A:
    Console.WriteLine("Вы идёте налево");
    break;
    case Movement.S:
    Console.WriteLine("Вы идёте назад");
    break;
    case Movement.D:
    Console.WriteLine("Вы идёте направо");
    break;
    }
    }