شمارش ایتم های نوع شمارشی در سی شارپ !
شاید عنوان این پست عجیب باشد! ولی مفهوم جالبی در ان وجود دارد و آن این است که بتوانیم ایتم های یک نوع enum را برای مثال داخل یک حلقه Foreach بگیریم و با ورودی ها آنها را مقایسه کنیم.
به این منظور در راستای افزایش مهارت کد نویسی و درک کد شما این پست نوشته میشود.
با این وصف اگر ما یک نوع شمارشی یا enum به صورت زیر داشته باشیم :
public enum Suit { Spades, Hearts, Clubs, Diamonds }
و حال قصد داریم آیتم های این enum را یکی یکی بررسی یا دریافت نماییم :
روش اول :
foreach (Suit suit in (Suit[]) Enum.GetValues(typeof(Suit))) { }
که کد بدلیل وضوح، نیازی به توضیح ندارد !
و یا
روش دوم :
foreach (string name in Enum.GetNames(typeof(Suits))) { System.Console.WriteLine(name); }