Hirdetés
- Amazfit T-Rex 3 - prehisztorikus idő
- Amazfit Active 2 NFC - jó kör
- Szívós, szép és kitartó az új OnePlus óra
- Amazfit Bip 6 - jót olcsón
- Ilyen lesz a Galaxy S26 Ultra
- Miért fárad gyorsabban az iPhone akku, mint az androidos?
- Garmin Fenix 8 AMOLED - a csúcshódítás költséges
- Bemutatkozott a Poco X7 és X7 Pro
- Megtartotta Európában a 7500 mAh-t az Oppo
- Garmin Venu X1 - vékony, virtuóz, váltságíjas
Új hozzászólás Aktív témák
-
bucsupeti
senior tag
A static metódus arra enged következtetni hogy valószínű ugyan abban az osztályban van ez a kaloriaKiir metódus amiben a main() és azért static hogy tudd meghívni a main-ben.
Lehet hogy a vizsgára amire készülsz ez jó és elegendő. Én a következő osztályokkal dolgoznék:
Gyumolcs : egyetlen gyümölcs adatait tároló POJO osztály. semmi extra metódus nem kell ebbe. Max a toString-et írd felül hogy az objektum értékeit adja vissza.
KaloriaTabla : lenne benne egy ArrayList<Gyumolcs> lista, egy adatbeolvasó metódus ami feltöltené ezt a listát. Konstruktorba feltölteném a listát. Kell egy kereső metódus ami egy string alapján keres a listában a gyümölcs neve alapján és Gyumolcs-öt adnék vissza, vagy null-t ha nincs. (Ez az osztály lehetne akár singleton is, ha már tanultátok)
A futtató osztályban (amiben a main() van), megírnám a felhasználói felületet, menüt, a névbekérést stb. Itt példányosítanám a KaloriaTabla-t és ennek a kereső metódusát hívogatnám.
Igaza van Sirpi kollégának abban hogy a contains használata nem a legjobb megoldás. Ha contains-t használsz akkor kezeld úgy hogy nem csak egy hanem több gyümölcsöt is kaphatsz eredményül, és ilyenkor minden találatot jeleníts meg. -
Ez a rész háromszor is szerepel: gyum.toString().contains(nev)
Egyrészt a harmadik automatikusan teljesülni fog, elhagyható, egyetlen vizsgálat is elég. Másrészt gondolom az elso gyum helyett az ertekek változót akartad használni, így az értékek.contains(nev) pont az, amire szükséged van, sőt, a toString-ezés miatt ha akár egyetlen betűt írsz be, ami a felsorolt gyümölcsök valamelyikében szerepel, azt is el fogja fogadni, nem néz teljes egyezést. Kicsit egyszerűsítve:
public static void kaloriaKiir(List<Gyumolcs> ertekek) {
Scanner scan = new Scanner(System.in, "ISO-8859-2");
System.out.println("Kérem a gyümölcs nevét: ");
String nev;
while (!ertekek.contains(nev = scan.nextLine())) {
System.out.println("Nem megfelelő név, újat kérek!");
}
System.out.println("Kérem a mennyiséget grammban: ");
int menny = scan.nextInt();
for (Gyumolcs gyum : ertekek) {
if (nev.equals(gyum.Megnevezes)) {
System.out.println(menny + " gramm " + gyum.Megnevezes + " " + gyum.kcal / 100 * menny + " gramm kalóriát tartalmaz.");
}
}
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Pioneer VSX-922
- Eladó: 2 db MSI MAG272CQR 27' Ívelt Gaming Monitor (csak egyben)
- Gamer PC-Számítógép. Csere-Beszámítás! R7 5800X / RTX 5060 / 32GB DDR4 / 1TB SSD
- LG UltraGear OLED 27GX790A-B . 480Hz . 0.03ms . 2560x1440 - Garancia 2028.07.07.
- ÚJszerű 1Hónapos Apple iPhone 17 256GB Black 1OO% ! még 11 Hó nemzetközi APPLE GaranciÁval
- LÉZEREZÉS! külföldi billentyűzet magyarra kb. 20-30p alatt!
- LG 42LX330C 42" LED-backlit LCD TV - Full HD
- QNAP TS-870U-RP 8 lemezes Rack NAS
- MacBook Pro 13, 14, 15, 16, MacBook Air M1, M2 M3 M4 bill magyarosítás lézerrel / sapkacserével
- Samsung Galaxy S25 Edge Titanium Jetblack 120 Hz AMOLED, AI-kamera 12/256 GB Újszerű karcmentes
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


