Witajcie,
Napisałem dzisiaj program, który wypisuje obiekty o randomowych wartościach. Wszystko było w porządku dopóki w pętli wykorzystywałem jedną zmienną "x", kiedy chciałem do pętli dodać zmienną "y", która została już zinicjalizowana w ten sam sposób jak jak "x". Kod różni się tylko zmienną jaka została użyta nic poza tym. Siedzę nad tym już dobre pół godziny, analizowałem kod od początku do końca i nie znalazłem nic z czego mógłby wynikać błąd, choć pewnie gdzieś on tkwi, lecz moje oko początkującego programisty nie wychwyciło go. Prosiłbym o pomoc, jeśli ktoś dostrzega błąd, a jeśli ktoś byłby tak miły wytłumaczyć błąd jeśli jest on dość dziwny i nie polega on na jakiejś literówce. Dzięki! :)
Pastebin: http://pastebin.com/yQ9gTrym
import java.util.Random;
class SetCord
{
public int x;
public int y;
private int Id;
private static int nextId = 1;
public SetCord(int a, int b)
{
x=a;
y=b;
}
public int getX()
{
Id=nextId;
nextId++;
return x;
}
public int getY()
{
Id=nextId;
nextId++;
return y;
}
public int getId()
{
return Id;
}
}
class Test{
public static void main(String args[])
{
Random rand = new Random();
SetCord[] teste = new SetCord[3];
for (int i = 0; i < 3; i++)
{
teste[i] = new SetCord(rand.nextInt(100), rand.nextInt(35));
}
for(SetCord x:teste)
{
System.out.println("x = " + x.getX());
System.out.println("y = " + y.getY()); //blad kompilacj - y cannot be resolved
System.out.println("x id " + x.getId());
System.out.println("y id " + y.getId()); //blad kompilacj - y cannot be resolved
}
}
}