Mam taki kod:
package Lotto;
import java.util.Random;
import java.util.TimerTask;
import java.util.Timer;
import java.util.Scanner;
class Kula {
int numerKuli;
boolean czyObciazona;
public Kula(boolean czyObciazona, int numerKuli) {
this.czyObciazona = czyObciazona;
this.numerKuli = numerKuli;
}
public void DodanieObciazenia() {
this.czyObciazona = true;
}
public void WypiszKule() {
System.out.println("numer kuli: " + numerKuli);
System.out.println("czyObciazona: " + czyObciazona);
}
}
public class Maszynalosujaca {
Kula[] tablica_kul = new Kula[49];
Timer timer;
// int[] kuleObciazone = new int [6];
public Maszynalosujaca() {
for (int i = 0; i < 49; i++) {
tablica_kul[i] = new Kula(false, i);
}
Random losowyObiekt = new Random();
for (int i = 0; i < 6; i++) {
int liczba = losowyObiekt.nextInt(48);
int numerkuli = tablica_kul[liczba].numerKuli;
tablica_kul[liczba] = new Kula(true, numerkuli);
//kuleObciazone[i] = liczba;
}
}
private void losowanie(Maszynalosujaca Maszyna) {
Random losowyObiekt = new Random();
int liczba1 = losowyObiekt.nextInt(48);
int liczba2 = losowyObiekt.nextInt(48);
Kula temp;
if (liczba1 != liczba2) {
temp = Maszyna.tablica_kul[liczba1];
Maszyna.tablica_kul[liczba1] = Maszyna.tablica_kul[liczba2];
Maszyna.tablica_kul[liczba2] = temp;
}
for (int i = 0; i < 49; i++) {
if (Maszyna.tablica_kul[i].czyObciazona == true) {
if (i > 1) {
temp = Maszyna.tablica_kul[i - 1];
Maszyna.tablica_kul[i - 1] = Maszyna.tablica_kul[i];
Maszyna.tablica_kul[i] = temp;
}
}
}
}
public void start() {
timer = new Timer();
timer.schedule(new RemindTask(), 0, 1000);
}
class RemindTask extends TimerTask {
int liczbapowtorzen = 3;
public void run() {
if (liczbapowtorzen > 0) {
System.out.println("Beep");
liczbapowtorzen--;
} else {
System.out.println("Koniec!");
timer.cancel();
}
}
}
public void stop() {
}
public static void main(String[] args) {
Maszynalosujaca Maszyna = new Maszynalosujaca();
for (int i = 0; i < 49; i++) {
System.out.println(Maszyna.tablica_kul[i].numerKuli);
System.out.println(Maszyna.tablica_kul[i].czyObciazona);
}
Maszyna.losowanie(Maszyna);
System.out.println("----------");
for (int i = 0; i < 49; i++) {
System.out.println(Maszyna.tablica_kul[i].numerKuli);
System.out.println(Maszyna.tablica_kul[i].czyObciazona);
}
}
}
Metoda start() ma rozpoczynać proces losowania a metoda stop ma konczyc proces losowania oraz wracać 6 pierwszych kul. Nie za bardzo wiem jak zrobić aby pomiędzy wywołaniami stop() i start(), co określony przedział czasu uruchamiała mi się metoda losuj, aby zamieniała mi elementy w tablicy Maszyna. Nie za bardzo wiem w jaki sposób zaimplementować te timery. Z Javą pracuję dopiero od dzisiaj ;s.