По своей сути Enums немного больше констант времени компиляции, которые сгруппированы и, таким образом, получают некоторую безопасность типов.Он имеет преимущества как пользовательского типа, так как он представляет собой только числа для обработки и использования констант в коде.
Тип по умолчанию для перечислений является одним из целочисленных, а значения по умолчанию начинаются с 0, считая до нуля.Хотя тип и значения могут быть перезаписаны, они не могут быть свободно изменены.Это должно быть целым числом.
Поскольку перечисления эффективно отображаются в целые числа и даже неявно преобразуются (или, скорее, остаются не преобразованными), вы можете сделать что-то подобное с комбинацией перечисление / массив.
Может быть, Dictionary<string, double>
будет более подходящим для вашего случая?
Также есть обходной путь: просто сохраните 85 и 80 в качестве значений Enum.Разделите на 10 во время вывода.Такие трюки часто используются для обхода точности с плавающей запятой.Но это может сработать и здесь.
Лично я чувствую, что это относится к области "Интернационализации".«8.5» или «8,5» - это просто то, как вы отображаете значение для этого ShoeSize.А для Enums я всегда рекомендую иметь массив значений для вывода.