- Eladhatatlannak ítélt CPU-k eladásával javult az Intel node-ok kihozatala
- Az AI átformálja a Peugeot modelljeit is
- Ráműthető a Linux PlayStation 5-re, de csak egy boot erejéig
- Mindenféle környezeti behatásnak ellenállnak az ASUS új TUF tápjai
- A kínai felsővezetés blokkolhatta Mark Zuckerberg óriási AI üzletét
- Azonnali VGA-s kérdések órája
- Melyik tápegységet vegyem?
- Eladhatatlannak ítélt CPU-k eladásával javult az Intel node-ok kihozatala
- 4K vs 8K – Megéri-e a 8K TV 2026-ban?
- Pixel plus ultra: teszten a 6K-s LG UltraFine monitor
- Milyen egeret válasszak?
- Papírnehezékként használható csúcs-GeForce-ot árul egy francia viszonteladó
- OLED TV topic
- Mini-ITX
- AMD K6-III, és minden ami RETRO - Oldschool tuning
Új hozzászólás Aktív témák
-
Szmeby
tag
válasz
plaschil
#6108
üzenetére
Amikor enumot csinálsz, nyugodtan tekintsd őket konstansnak. Vagyis a legtöbb esetben felesleges mellé static final cuccokat definiálni, azok simán elvannak az enum obejktumon belül is. Pl. a KapacitasTipus-ban.
Vagy eleve a double értékeket adod be a konstruktornak (0.5 és 1.0), vagy ha ragaszkodsz az egész számokhoz is, akkor a konstruktorban elosztod százzal. Így a getter sokkal egyszerűbb lesz, megszűnik a felesleges komplexitás (if).Valami ilyesmi módon:
public enum KapacitasTipus {
M0(100), M10(50);
private final int kapacitasTipus;
private final double ertek;
private KapacitasTipus(int tipus) {
this.kapacitasTipus = tipus;
this.ertek = tipus / 100.0;
}
public int getKapacitasTipus() {
return this.kapacitasTipus;
}
public double getKapacitasTipusErtek() {
return this.ertek;
}
}De akár második konstruktor argumentumként is belőhető a másik szám, ha erre tényleg szükség van.
Ami a komplexitást illeti, amikor gigászi if-else vagy switch-case füzéreket látsz, akkor érdemes elgondolkodni azon, hogy talán nem a legjobb helyen vannak. Gondolok itt a Szerzodes.createList() metódusra, ahol egy stringből enum objektumot készítenél. Szerencsére erre létezik az enumban beépített metódus:
pkod = PontKod.valueOf(kod);
...
ktipus = KapacitasTipus.valueOf(kapacitastipus);Amit tudni érdemes róla, hogy exception-t dob, ha olyan stringet kap, amihez nem talál enum példányt. Ha szükséges, ezt ajánlott lekezelni egy try-catch-ben.
A PontKod átalakításával még átláthatóbb kódod lesz.Az enumnak van még pár hasznos beépített metódusa (name(), ordinal(), values()), érdemes őket megismerni.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Napelem
- War Thunder - MMO Combat Game
- Xiaomi 17 - még mindig tart
- Azonnali VGA-s kérdések órája
- Melyik tápegységet vegyem?
- Brutálisan drága lehet a Poco F9 Ultra
- Kerékpárosok, bringások ide!
- Vicces képek
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- EarFun Air Pro 4+ – érdemi plusz
- További aktív témák...
- Lenovo T480S i5 8350U, 16GB RAM, 256GB SSD, jó akku, számla, 6 hó gar
- NVME, M2 NGFF, 2,5" SATA SSD-k vegyes OEM márkák és prémium típusok, sok újszerű. 256GB-1TB
- ÁRGARANCIA! Épített KomPhone Ultra 7 265KF 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- szinteÚJ Dell Pro 14 Ultra 7 255U 32GB DDR5 512GB AI PC FHD+ 1 év garancia
- Logitech MX Master 3S for MAC
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

