int randXX;
int randYY;
public void utworzLosoweInne() {
ArrayList<Integer> listaX = new ArrayList<Integer>();
ArrayList<Integer> listaY = new ArrayList<Integer>();
Random rand = new Random();
for (int i = 0; i < 10; i++) {
randXX = losuj(rand);
randYY = losuj(rand);
for (int j = 0; j < listaX.size(); j++) {
sprawdz(listaX.get(j), listaY.get(j), randXX, randYY, rand);
}
listaX.add(randXX);
listaY.add(randYY);
System.out.print(randXX + ", ");
System.out.println(randYY);
}
}
private int losuj(Random rand) {
return (-10 + rand.nextInt(20));
}
public void setRandXX(int randXX) {
this.randXX = randXX;
}
public void setRandYY(int randYY) {
this.randYY = randYY;
}
private void sprawdz(int mojX, int mojY, int randX, int randY, Random rand) {
if (mojX == randX && mojY == randY) {
System.out.println("Wszedlem przed" + randX + " " + randY);
randX = losuj(rand);
randY = losuj(rand);
sprawdz(mojX, mojY, randX, randY, rand);
setRandXX(randX);
setRandYY(randY);
System.out.println("Wszedlem po" + randX + " " + randY);
}
}
Możesz zrobić to na liście. Dodajesz swoje współrzędne do listy listaX i listaY. A następnie porównujesz. To co Cię najbardziej powinno interesować w tym kodzie to metoda sprawdz.
Pozdrawiam.