Изброените типове са множество от константи от тип – този изброен тип.
Същност на изброените типове
Всяка една константа, която е декларирана в един изброен тип, е асоциирана с някакво цяло число. По подразбиране, за това целочислено скрито представяне на константите в един изброен тип се използва int.
За да покажем "целочислената природа" на константите в изброените типове, нека се опитаме да разберем какво е численото представяне на константата отговаряща на "понеделник" от примера от предходната подсекция:
int mondayValue = (int)Days.Mon;
Console.WriteLine(mondayValue);
|
След като го изпълним, резултатът ще бъде:
Стойностите, асоциирани с константите в един изброен тип по подразбиране са индексите в списъка с константи на този тип, т.е. числата от 0 до броя константи в типа минус единица. Така, ако разгледаме примера с изброения тип за дните в седмицата, използван в предходната подсекция, константата Mon е асоциирана с числената стойност 0, константата Tue с целочислената стойност 1, Wed – с 2, и т.н.
|
Всяка константа в един изброен тип реално е текстово представяне на някакво цяло число. По подразбиране, това число е индексът на константата в списъка от константи на изброения тип.
|
Въпреки целочислената природа на константите в един изброен тип, когато се опитаме да отпечатаме дадена константа, ще бъде отпечатано текстовото й представяне зададено при декларацията й:
Console.WriteLine(Days.Mon);
|
След като изпълним горния код, резултатът ще бъде следният:
Скрита числена стойност на константите в изброени типове
Както вече се досещаме, можем да променим числената стойност на константите в един изброен тип. Това става като по време на декларацията присвоим стойността, която предпочитаме, на всяка една от константите.
Сподели с приятели: |