داده شمارشی یا Enumeration در جاوا :
داده شمارشی یا Enumeration واژهای است که در زبان برنامهنویسی جاوا استفاده میشود و به مجموعهای از اعضا با نوع مشخص اشاره دارد. این مفهوم به برنامهنویسان امکان میدهد تا به راحتی از اعضای مجموعهها استفاده کنند و آنها را پیمایش کنند.
در جاوا، Enumeration یک رابط (Interface) است که توسط کلاسهایی مانند Vector و Hashtable پیادهسازی میشود. رابط Enumeration دارای سه متد است که توسط کلاسهای پیادهسازی شده باید به صورت مشخص پیادهسازی شوند. این سه متد عبارتاند از:
1. boolean hasMoreElements(): این متد بررسی میکند که آیا عناصر دیگری در مجموعه وجود دارند یا خیر. اگر عناصر دیگری وجود داشته باشند، مقدار true برگردانده میشود و در غیر این صورت مقدار false برگردانده میشود.
2. Object nextElement(): این متد عنصر بعدی در مجموعه را برمیگرداند. در صورتی که عناصر دیگری وجود نداشته باشد، یک استثناء از نوع NoSuchElementException ایجاد خواهد شد.
3. (اختیاری) void remove(): این متد عنصر فعلی را از مجموعه حذف میکند. اگر این متد پیادهسازی نشود، یک استثناء از نوع UnsupportedOperationException ایجاد خواهد شد.
برای استفاده از یک Enumeration، ابتدا باید یک شیء از کلاس مورد نظر را ایجاد کرده و سپس با استفاده از متد elements() بر روی آن کلاس، یک Enumeration از عناصر مجموعه را دریافت کنیم. سپس با استفاده از متد hasMoreElements() میتوانیم بررسی کنیم که آیا عناصر دیگری در مجموعه وجود دارند یا خیر. در صورتی که وجود داشته باشند، میتوانیم با استفاده از متد nextElement() عنصر بعدی را دریافت کنیم و از آن استفاده کنیم. نکته مهم این است که یکبار عنصر بعدی دریافت شود، عنصر قبلی حذف میشود و دیگر قابل دسترسی نیست.
استفاده از Enumeration در جاوا به ما امکان میدهد تا به راحتی مجموعهها را پیمایش کرده و عناصر آنها را با استفاده از متد nextElement() دریافت کنیم. با این حال، باید توجه داشت که Enumeration تنها به صورت خواندنی است و امکان تغییر در مجموعه را فراهم نمیکند.