1 / 0 / 1
Регистрация: 06.11.2022
Сообщений: 27

Как правильно сделать TryParse enum списка?

13.11.2022, 18:00. Показов 329. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как правильно сделать bool tryparse enum списка чтоб при введение неправильного варианта выдавало defult
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
namespace ex14;
 
class Program
{
    static void Main(string[] args)
    {
        int satietyLevel = 0;
        Console.WriteLine($"текущий уровень сытости кота {satietyLevel}");
        Console.WriteLine("Hey don't forget to feed your cat \n" +
                       "What will you feed your cat\n" + "Milk\n" + "Water\n" + "Beef\n" + "Chiken\n" +
                       "Kitekat\n");      
        string operation = Console.ReadLine();
        Food eat = (Food)Enum.Parse(typeof(Food), operation);
        Operation(eat); 
    } 
    static void Operation(Food Oper)
    {
        Food kitekat = Food.Kitekat;
        Food water = Food.Water;
        Food milk = Food.Milk;
        Food beef = Food.Beef;
        Food chiken = Food.Chiken;
        switch (Oper)
                {
                    case Food.Kitekat:
                        Console.WriteLine("Cat ate  kitekat, satiety level =  {0} ", (int)kitekat);
                        break;
                    case Food.Water:
                        Console.WriteLine("Cat drank water satiety level = {0}", (int)water);
                        break;
                    case Food.Milk:
                        Console.WriteLine("Cat drank  milk, satiety level = {0}", (int)milk);
                        break;
                    case Food.Beef:
                        Console.WriteLine("Cat ate Beef, satiety level = {0}", (int)beef);
                        break;
                    case Food.Chiken:
                        Console.WriteLine("Cat ate chiken , satiety level = {0}", (int)chiken);
                        break;
                    default:
                        Console.WriteLine("Wrong food");
                    break;
                }
    }
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.11.2022, 18:00
Ответы с готовыми решениями:

Получить доступ к TryParse типа Enum через рефлексию
возникла необходимость восстановить значение перечисления System.Windows.Forms.FormWindowState из строки. Метода Parse или TryParse у этого...

Как сделать TryParse на Java
Приветствую. Есть такой код. static int Input() { int temp; while (!in.hasNextInt()) { ...

Как сделать TryParse данных в валюту?
Всем привет. В общем нужно, чтобы текстбокс, куда пользователь вводит данные, допускал (но не требовал) ввод знака валюты, разделители...

3
 Аватар для esperanto_qun
1124 / 656 / 393
Регистрация: 28.01.2021
Сообщений: 1,336
13.11.2022, 19:47
cloudymymind,

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
enum Position { Manager, Programmer, Designer }
    static void Main()
    {
        string input = "NoName";
        Enum.TryParse(typeof(Position), input, out object result);
        switch (result)
        {
            case Position.Manager:
                Console.WriteLine("Manager");
                break;
            case Position.Programmer:
                Console.WriteLine("Programmer");
                break;
            case Position.Designer:
                Console.WriteLine("Designer");
                break;
            default:
                Console.WriteLine("Default");
                break;
        }
    }
0
1 / 0 / 1
Регистрация: 06.11.2022
Сообщений: 27
13.11.2022, 20:04  [ТС]
не могли бы вы сделать как в моем коде это делается делаю как вы описали но все равно не получается
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16150 / 11271 / 2890
Регистрация: 21.04.2018
Сообщений: 33,142
Записей в блоге: 2
13.11.2022, 20:22
Цитата Сообщение от cloudymymind Посмотреть сообщение
чтоб при введение неправильного варианта выдавало defult
defult для enum это ноль.
Если вы явно не задаёте значение для членов перечисления, то по факту это будет первое из задаваемых имён.

C#
13
14
15
16
17
18
19
20
21
        if (Enum.TryParse<Food>(operation, out Food eat))
        {
            // Корректный ввод
           Console.WriteLine($"Cat ate  {eat.ToString().ToLower()}, satiety level =  {(int)eat}.");
        }
        {
            // Некорректный ввод
            Console.WriteLine("God knows what you entered!");
        }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.11.2022, 20:22
Помогаю со студенческими работами здесь

Как правильно использовать enum?
Хочу использовать enum для указания на номер элемента в массиве (в квадратных скобках), однако компилятору что-то не нравится: enum...

Как правильно работать с enum в классе?
Собственно, нигде не нашел как отправлять и принимать enum внутри методов На данный код ругается компилятор: class TestClass { ...

как правильно определить enum в модулях?
Добавлено через 23 минуты все, разобрался. В main.сpp нужно было include поменять местами :D тему можно закрывать

Как правильно прикрутить enum к Combobox в MVVM
Здравствуйте. Озадачен вопросом как правильно прикрутить Enum к Combobox в MVVM? И как получить выбранное значение? В осваивании mvvm в...

Как правильно написать enum в React Typescript?
У меня есть компонент, в который я из массива объектов передаю пропс deviceType = &quot;smartphone или computer&quot; (циклом через map)...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru