Константите на един изброен тип могат да бъдат използвани в конструкции switch-case
страница 71/84 Дата 03.01.2022 Размер 0.54 Mb. #112941 Тип Програма
Класове Свързани:
Изпитна тема1 ,
Изпитна тема2 Константите на един изброен тип могат да бъдат използвани в конструкции switch-case.
Нека преработим метода за получаване на цената за чашка кафе в зависимост от вместимостта на чашката, като този път използваме изброения тип CoffeeSize , който декларирахме в предходните примери:
public double getPrice(CoffeeSize coffeeSize)
{
switch (coffeeSize)
{
case CoffeeSize.Small:
return 0.20;
case CoffeeSize.Normal:
return 0.40;
case CoffeeSize.Double:
return 0.60;
default:
throw new InvalidOperationException(
"Unsupported coffee quantity: " +((int)coffeeSize));
}
}
Както виждаме, в този пример възможността потребителите на нашия метод да провокират непредвидено поведение на метода е нищожна , тъй като ги принуждаваме да използват точно определени стойности , които да подадат като аргументи , а именно константите на изброения тип CoffeeSize . Това е едно от предимствата на константите , декларирани в изброени типове пред константите декларирани в произволен клас.
Сподели с приятели: