Hirdetés

Új hozzászólás Aktív témák

  • WonderCSabo
    félisten

    Totál nem fog ma az agyam, egy ilyenen elakadok. Mit ronthatok el folyton?
    A tömbök így vannak, és azok rendben is vannak. (Első oszlop:név, 2. oszlop gazdnev, 3. oszlop tomeg és a negyedik oszlop a kor.
    A tömbök azért null-ig mennek, mert husszú tömbbel dolgozunk(pl 500 elemes), mert a tömb hosszának mindig változnia kellene.
    Bukfenc;Pista;65;2
    Bukfenc;Isti;65;2
    Füsti;Pista;65;2
    Füsti;Pista;65;2
    Füsti;Pista;65;2
    Füsti;Pista;65;2
    Füsti;Pista;65;2

    Hibajelenség: Ha bukfencre keresek rá, semmit nem talál, ha füstire, akkor talál, meg a végére kidob egy null;null;null;null-ot, mint 7. találat.

    String kereses=extra.Console.readLine("Milyen nevet keressünk?");
    db=0;
    i=0;
    while (nev[i]!=null){
    if (kereses.equals(nev [i])){
    modvalogatas[db++]=i+1;
    }
    i++;
    }

    if(db!=0){
    System.out.println("Az alábbi találat(ok) keletkeztek. ");
    for (int j=0;j<db;j++){
    System.out.println(modvalogatas[j]+"-"+nev[modvalogatas[j]]+";"+gazdnev[modvalogatas[j]]+";"+kor[modvalogatas[j]]+"év;"+tomeg[modvalogatas[j]]);
    }

    Ezt a megoldást a tanár ajánlotta nektek? Mert ez borzalmas. Csináljatok egy Dog nevű osztályt, annak legyen név, gazda, tömeg, kor mezői, és rögtön elég egy tömbben tárolni. (Azt mondanám, hogy List-ben, de gondolom Collections még nem volt). Meg lehetne for ciklus while helyett, azt se vettétek még?

    public class Dog {
    public String name, owner, age, weight; // getter setter kéne, típus lehet szám, stb.

    @Override
    public String toString() {
    return name + " " + owner + " " + age + " " + weight;
    }
    }

    ...

    Dog[] dogs = new Dogs[500];
    // read

    int i = 0;
    Dog dog = dogs[i];
    while(dog != null) {
    if (dog.name.equals(input)) {
    System.out.println(dog);
    }
    dog = dogs[++i];
    }

    Egyébként már a beolvasásnál el lehetne menteni, hány sor volt, és akkor lehetne addig menni a null ellenőrzés helyett.

    Megelőztek.

Új hozzászólás Aktív témák