Hirdetés
- Fejhallgató erősítő és DAC topik
- Milyen egeret válasszak?
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Új Xeonokkal szorongatná meg az Intel az AMD-t
- 3D nyomtatás
- Lítium-ion/Li-ion akkumulátorok
- Hobby elektronika
- NVIDIA GeForce RTX 3060 Ti / 3070 / 3070 Ti (GA104)
- Projektor topic
- Milyen asztali (teljes vagy fél-) gépet vegyek?
Ú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?:))
- Starlink
- Renault, Dacia topik
- One otthoni szolgáltatások (TV, internet, telefon)
- Videó stream letöltése
- Linux kezdőknek
- Milyen okostelefont vegyek?
- Tőzsde és gazdaság
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Kínai és egyéb olcsó órák topikja
- Elmossa a Samsung a valóság és az AI-fantázia határát
- További aktív témák...
- Asztali PC , R7 5700 , RTX 3080 , 24GB DDR4 , 1TB NVME
- Secretlab MAGNUS Pro elektromos asztal - FULL EXTRÁS szett (2 monitor kar, PC tartó, kiegészítők...)
- Lenovo ThinkPad X1 Yoga GEN 9/14"WUXGA /2-in-1/Ultra 7/165U vPro/32GB/512GBB SSD/ÚJ/GARANCIA
- www.olcsogamerpc.hu - V055 - DDR4 - INTEL i5-14400F - 16GB RAM - RTX 5060 - 1TB SSD - HITELRE IS!
- www.olcsogamerpc.hu - V051 - DDR4 - INTEL i5-12400F - 16GB RAM - RTX 5060 - 1TB SSD - HITELRE IS!
- Apple iPhone 15 128GB, Kártyafüggetlen, 1 Év Garanciával
- 5G LTE! Microsoft Surface Pro 8 i7-1185G7 16GB 512GB 1 év garancia
- Telefon felvásárlás!! Xiaomi Redmi Note 10, Xiaomi Redmi Note 10s, Xiaomi Redmi Note 10 Pro
- iPhone 12 Pro 128GB 100% (1év garancia)
- HP EliteBook 840 G7 i5-10210U 16GB 512GB FHD 400nit 1 év garancia
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest


