jak przekazac tablice obiektow do metody?

0

Witam, na poczatek standardowo zaznacze ze jestem newbie i dopiero zaczalem nauke.
Aplikacja ma na celu uzycie metody do wyswietlenia nazwy i rasy psa
zaczne od przykladu.
metoda main

public class Start {
    public static void main(String[] args) {
        Pies[] psy = new Pies[2];

        psy[0]= new Pies("Max","owczarek");
        psy[1]= new Pies("Brutus","kundel");

        danePsow(????);
    }

    static void danePsow(){
        System.out.println(psy[0].podajNazwe()+","+psy[0].podajRase());
        System.out.println(psy[1].podajNazwe()+","+psy[1].podajRase());
    }
}

Klasa Pies

public class Pies {
    String nazwa;
    String rasa;
    
    Pies(String n, String r){
        nazwa = n;
        rasa = r;
    }

    String podajNazwe(){
        return nazwa;
    }

    String podajRase(){
        return rasa;
    }
}

Pytanie brzmi: co powinienem przekazac jako paramet przy wywolaniu danePsow(????) aby ta metoda rozpoznala obiekty psy[0], psy[1] i mogla uzyc metod z klasy Pies ? W tym momencie kompilator wywala ze obiekty psy[0] i psy[1] nie sa rozpoznane. Co jesli umieszcze metode danePsow() w klasie Pies? Jak przekazac obiekty do innej klasy? Jesli uzyje:

System.out.println(psy[0].podajNazwe()+","+psy[0].podajRase());
System.out.println(psy[1].podajNazwe()+","+psy[1].podajRase());

bez wywolywania metody wszystko dziala jak nalezy.

1

Jakoś tak:

static void danePsow(Pies[] psy) {
...
}

Możesz sobie zobaczyć jak przekazujesz tablicę argumentów do main. Tutaj jest tak samo.
Potem w Twoim main wywołujesz to danePsow(psy); bo masz tam tablice o nazwie psy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1