Java metódus (? )
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
A függvény így nézne ki:
public boolean moveBackwardsAndRight(ChessBoard b){
if(b.getItem( (pos.x+1) , (pos.y+1) ) != Const.FREE) { return false};
else {
pos.plusY(1);
pos.plusX(1);
return true;
}
A kérdésem az lenne, hogy ebbe hogyan lehetne beilleszteni, hogy megváltoztassa a ChessBoard (egyébként char[][]) osztály egyik elemét, ha feltétel megvan
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Tehát azt mondod, hogy ha változtatok az argumentumban lévő osztály egyik értékén, akkor az kint is megváltozik?
Mivel az nem egy primitív típus
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
"A kérdésem az lenne, hogy ebbe hogyan lehetne beilleszteni, hogy megváltoztassa a ChessBoard (egyébként char[][]) osztály egyik elemét, ha feltétel megvan"
Ugyanúgy, mint bárhol, egyedül, amit hiába csinálsz:
b = valami_más;
Mert kint továbbra is ugyanaz lesz az értéke.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
#1 vagyok
Megváltoztatni a ChessBoard egyik elemét úgy tudsz más metódusból, ahogy elmondtam és ahogy csinálnád is a fenti kódban:
....(ChessBoard b) {
b.getItem(...)
b.setItem(..., ...);
}
Nyilván kell lenni setItem-nek is a ChessBoard-ban.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Áh rendben, így már világos :)
Köszönöm szépen!
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Nem csak a primitív típusok adódnak át érték szerint, hanem minden.
ChessBoard cb = new ChessBoard();
Ilyenkor a cb csak egy referencia lesz az objektumra.
Amikor átadod a metósudnak ez a referencia érték szerint adódik át viszont ugyan arra az objektumra fog hivatkozni.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
#1 vagyok
#9: Hopp, igazad van! :)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!