tablice obiektów

0

Cześć Wszystkim,

Mam problem dotyczący takiego oto problemu: jak stworzyć klasę za pomocą, której chcę uzyskać taki efekt:

mamy losowanie np. lotto, chcemy aby klasa gromadziła takie informacje:

  • nr losowania,
  • data losowania,
  • wylosowane liczby - np. 6 lub 20 itd.

Ja stworzyłem taką klasę:

public class Losowania {
    
    int nrLosowania;
    String dataLosowania;
    int wylosowaneLiczby[];
    
    public void pobierzLosowanie(int nrL, String dL, int wL[]) {
        
        nrLosowania = nrL;
        dataLosowania = dL;
        for(int i=0; i<wL.length; i++)
            wylosowaneLiczby[i]=i;
    
    }

}

potem w funkcji programu głównego main, zrobiłem tak:

public class Multi {

    public static void main(String[] args) {
        
        //przykładowa tablica do funkcji
        int tablica[] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20};

        //tablica obiektów
        Losowania[] losowanie = new Losowania[2];
        for(int i=0; i<losowanie.length; i++)
            losowanie[i] = new Losowania();
        
        losowanie[0].pobierzLosowanie(1, "01012013", tablica);

  }
}

Problem polega na tym, że java wywala mi błąd:

Exception in thread "main" java.lang.NullPointerException
    at pl.krzysiek.java.Losowania.pobierzLosowanie(Losowania.java:23)
    at pl.krzysiek.java.Multi.main(Multi.java:14)

Nie wiem co robię źle. Chciałbym po prostu gromadzić wyniki w lotto za pomocą takiej struktury. Może źle zaimplementowałem tę klasę.
Bardzo Was proszę o pomoc w tej sprawie bo zaciąłem się w tym temacie i nie mogę polecieć dalej.

Serdecznie pozdrawiam Was Wszystkich
Krzysiek

1

Dosyć prosty problem masz, masz zdeklarowaną zmienną wylosowaneLiczby ale jej nie inicjujesz. W metodzie pobierzLosowanie przypisz zmienną wL do wylosowaneLiczby, a w for zdecyduj się z której zmiennej chcesz korzystać.

0

Dziękuję ślicznie za odpowiedź. Taki mały wpis i wszystko działa ja się patrzy. Jeszcze jedno pytanko: czy dobrze dobrałem strukturę klasy do gromadzenia danych i to czy łatwo będę mógł je odczytywać do analiz?

Serdecznie pozdrawiam i jeszcze raz dziękuję za rozwiązanie mojego problemu:)

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