# Kā izmantot Java enums, lai izveidotu konstantes savā kodā

Ar Java enums varat izveidot mainīgos ar fiksētām vērtībām. Tie tiek rakstīti ar lielajiem burtiem un tos nevar mainīt. Tie tiek izmantoti, lai uzlabotu koda loģiku un lasāmību, un var palīdzēt izveidot tīru kodu.

## Kas ir Java enums?

Java valodā enums ir īpašs [datu tips](https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/java-datu-tipi/), ko var izmantot tradicionālās klasēs, bet kas atšķiras no tradicionālajām klasēm vienā būtiskā aspektā. Enum ir mainīgais, kam ir **īpaši definētas, fiksētas un tādējādi ierobežotas vērtību opcijas**. Java enums ir konstantes, kas neļauj kodā izmantot nevēlamas vērtības. Tas nodrošina koda struktūras loģiskumu un palielina lasāmību. Termins „enum” cēlies no vārda „enumeration” (uzskaitīšana).

## Kāda ir Java enumu sintakse?

Java enumu sintakse vienmēr ir strukturēta vienādi un izskatās šādi:

```java
enum NameOfTheClass {
	VALUE1,
	VALUE2,
	VALUE3
}
```

Tātad, ja vēlaties definēt enum klasi, sāciet ar atslēgvārdu `enum`, ko izmantojat `class` vai `interface` vietā. Tad nosauciet īpašo klasi un ievietojiet vēlamās atļautās konstantes izliektās iekavās. Konstantes **vienmēr raksta ar lielajiem burtiem** un atdalītas viena no otras ar komatiem.

## Kā izveidot klasi ar enum

Viens no veidiem, kā var izmantot Java enums, ir izveidot sarakstu, kurā iekļauti gada mēneši. Šādā sarakstā varētu būt tikai divpadsmit iespējamās vērtības. Ja vēlāk ir nepieciešama mainīgā tipa `Months`, ir atļauts izmantot tikai definētās konstantes. Šeit ir redzams, kā uzrakstīt kodu:

```java
enum Months {
	JANUARY,
	FEBRUARY,
	MARCH,
	APRIL,
	MAY,
	JUNE,
	JULY,
	AUGUST,
	SEPTEMBER,
	OCTOBER,
	NOVEMBER,
	DECEMBER
}
```

Lai deklarētu mainīgo tipa `Months`, piešķiriet tam vērtību un izmantojiet Java komandu `System.out.println`, lai to parādītu. Kodā tas izskatās šādi:

```java
public class Main {
	public static void main(String[] args) {
Months month = Months.APRIL;
System.out.println(month);
	}
}
```

## Kā lietot Java enums klasē

Jūs varat izmantot Java enums arī klasē. Iepriekš minētajā piemērā tas izskatītos šādi:

```java
public class Main {
	enum Months {
	JANUARY,
	FEBRUARY,
	MARCH,
	APRIL,
	MAY,
	JUNE,
	JULY,
	AUGUST,
	SEPTEMBER,
	OCTOBER,
	NOVEMBER,
	DECEMBER
}
		public static void main(String[] args) {
Months month = Months.APRIL;
System.out.println(month);
		}
}
```

## Kā izmantot `values()` metodi, lai pieprasītu visas konstantes

Ja vēlaties parādīt visas pieejamās vērtības, varat izmantot `values()` metodi. Tā izvada konstantes masīva veidā. Šeit ir parādīts, kā to izdarīt, izmantojot iepriekš minēto piemēru:

```java
enum Months {
	JANUARY,
	FEBRUARY,
	MARCH,
	APRIL,
	MAY,
	JUNE,
	JULY,
	AUGUST,
	SEPTEMBER,
	OCTOBER,
	NOVEMBER,
	DECEMBER
}
public class Main {
	public static void main(String[] args) {
for (Months month : Months.values()) {
System.out.println(month);
		}
	}
}
```

## Kā lietot Java enums ar `switch()`

Jūs varat arī apvienot Java enums ar citām metodēm. Šeit ir redzams, kā tas izskatās, ja to apvieno ar `switch()`:

```java
enum Months {
	JANUARY,
	FEBRUARY,
	MARCH,
	APRIL,
	MAY,
	JUNE,
	JULY,
	AUGUST,
	SEPTEMBER,
	OCTOBER,
	NOVEMBER,
	DECEMBER
}
public class Main {
	public static void main(String[] args) {
		Months month = Months.APRIL;
switch (month) {
case APRIL:
System.out.println("The outdoor pool is closed.");
break;
case MAY:
System.out.println("The outdoor pool is closed.");
break;
case JUNE:
System.out.println("The outdoor pool eagerly awaits your visit!");
break;
// You can now try this out for all months.
		}
	}
}
```


This is a markdown version of: [https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/java-enums/](https://www.ionos.com/lv-lv/digitalguide/timekla-vietnes/timekla-izstrade/java-enums/) for AI/LLM consumption.