=========== JAVA =================
Mam problem z takiej beczki:
Mam klase (gwiazdozbiory), której elementem jest dynamiczna tablica, zadeklarowana w mainie:
Kod:
System.out.println("Jak dużą bazę danych chcesz utworzyć? [Ilość miejsc]");
bd_miejsca = klaw.nextInt();
gwiazdozbiory[] gwiazda = new gwiazdozbiory[bd_miejsca];
Na poczatku pytam usera, jak duża BD chce stworzyć, a później ile wpisów chce do niej dodać. Używam domyślnego konstruktora, dopisując tylko parametry poprzez metody lub bezpośrednio np.:
Metoda klasy:
Kod:
public void setGwiazdozbior(String newGwiazdozbior)
{
Gwiazdozbior = newGwiazdozbior;
}
Main:
Kod:
for (int j=0; j<gwiazda.length; j++)
if (gwiazda[j] == null)
{
gwiazda[j] = new gwiazdozbiory();
System.out.println("Podaj gwiazdozbior w ktorym znajduje sie ta gwiazda: ");
newGwiazdozbior = klaw.next();
gwiazda[j].setGwiazdozbior(newGwiazdozbior);
}
Wszystko byłoby okej, gdyby nie to, że np wyświetlanie tych wpisów chciałbym wrzucić w procedurę.
Aktualnie mam to: jako kolejne linijki kodu w funkcji main:
Kod:
for (int i = 0; i<bd_miejsca; i++)
if (gwiazda[i] != null)
{
System.out.println("===== ID: " + gwiazda[i].getID_gwiazda());
System.out.println("Gwiazdozbior: " +gwiazda[i].getGwiazdozbior());
System.out.println("Nazwa: " + gwiazda[i].Nazwa);
System.out.println("Nazwa katalogowa: " + gwiazda[i].getNazwa_katalogowa());
System.out.println("Półkula: " + gwiazda[i].Polkula);
System.out.println("=============");
}else System.out.println("brak wpisu"); //lub nic, dla testow zostawiam narazie 'brak wpisu'.
W jaki sposob wrzucić to do procedury?
Jak wyrzucam ten kawałek kodu do procedury
Kod:
public static void wyswietlBD()
{
for (int i = 0; i<bd_miejsca; i++)
if (gwiazda[i] != null)
{
System.out.println("===== ID: " + gwiazda[i].getID_gwiazda());
System.out.println("Gwiazdozbior: " +gwiazda[i].getGwiazdozbior());
System.out.println("Nazwa: " + gwiazda[i].Nazwa);
System.out.println("Nazwa katalogowa: " + gwiazda[i].getNazwa_katalogowa());
System.out.println("Półkula: " + gwiazda[i].Polkula);
System.out.println("=============");
}else System.out.println("brak wpisu"); //lub nic, dla testow zostawiam narazie 'brak wpisu'.
}
to wyskakuje mi błąd, że nie widzi takiego obiektu jak gwiazda.. Jak to poprawić? Program muszę zrobić na funkcjach i procedurach..
Zakładki