Наступний приклад демонструє перетворення перерахованого значення на рядок. тип Кольори = | Червоний = 1 | Blue = 2 let myColors = Кольори. Red printfn $"Значення цього екземпляра '{myColors. ToString()}'" // Вихід. // Значення цього екземпляра 'Red'.
Підхід 1: Використання ключа об’єкта У цьому підході ми будемо використовувати той факт, що ключі об’єктів є рядками. Кожне значення enum відповідає ключу в об’єкті. Ми можемо використовувати значення enum як ключ для отримання відповідного рядкового представлення.
Щоб перетворити рядок на значення enum, ви можете використовувати метод valueOf().. У цьому прикладі ми створюємо функцію convertToColorEnum(), яка приймає рядковий параметр str. Ми використовуємо str як ключ для доступу до значення enum, використовуючи перелік Color як тип. Метод valueOf() перетворює рядок на відповідне значення enum.
Java Enum має два методи, які отримують це значення константи enum, name() і toString(). Метод toString() викликає метод name(), який повертає рядкове представлення константи enum. У лістингу 1 значення повертається викликом методів name() і toString() для Animal. Константний метод DOG – DOG.
ми можемо використовуйте метод name() або toString() переліку, щоб перетворити його на рядок. Ми також можемо оголосити константи, використовуючи статичні фінальні поля або інтерфейс замість enum.
Наступний приклад демонструє перетворення перерахованого значення на рядок. тип Кольори = | Червоний = 1 | Blue = 2 let myColors = Кольори. Red printfn $"Значення цього екземпляра '{myColors. ToString()}'" // Вивід. // Значення цього екземпляра "Red".
Щоб серіалізувати імена enum як рядки, використовуйте конвертер JsonStringEnumConverter або JsonStringEnumConverter<TEnum>. Лише JsonStringEnumConverter<TEnum> підтримується середовищем виконання Native AOT. За замовчуванням переліки серіалізуються як числа.Щоб серіалізувати імена enum як рядки, використовуйте конвертер JsonStringEnumConverter.