2. Aurkezpena
1 Zer da objektu arraya?
2 Zertarako bi dimentsio?
3 Zer da 2D arraya?
4 Nola erabili?
5 Gogoratu beharrekoak
3. Aurkezpena
1 Zer da objektu arraya?
2 Zertarako bi dimentsio?
3 Zer da 2D arraya?
4 Nola erabili?
5 Gogoratu beharrekoak
4. Zer da objektu arraya?
Posizio bakoitzean oinarrizko motako datu bat eduki ordez
objektu jakin bat duen arraya da.
String, Pertsona, etab.
5. Adibidea I
Pertsona[] erabiltzaileak = new Pertsona[4];
6. Adibidea II
Pertsona[] erabiltzaileak = new Pertsona[4];
erabiltzaileak[0] = new Pertsona("Ander");
7. Adibidea III
Pertsona[] erabiltzaileak = new Pertsona[4];
erabiltzaileak[0] = new Pertsona("Ander");
erabiltzaileak[3] = new Pertsona("Irati");
8. Adibidea IV
Pertsona[] erabiltzaileak = new Pertsona[4];
erabiltzaileak[0] = new Pertsona("Ander");
erabiltzaileak[3] = new Pertsona("Irati");
erabiltzaileak[1] = new Pertsona("Mikel");
9. Adibidea V
Pertsona[] erabiltzaileak = new Pertsona[4];
erabiltzaileak[0] = new Pertsona("Ander");
erabiltzaileak[3] = new Pertsona("Irati");
erabiltzaileak[1] = new Pertsona("Mikel");
erabiltzaileak[2] = new Pertsona("Jon");
10. Aurkezpena
1 Zer da objektu arraya?
2 Zertarako bi dimentsio?
3 Zer da 2D arraya?
4 Nola erabili?
5 Gogoratu beharrekoak
11. Zertarako bi dimentsio? I
Non aurki dezakegu 2Da?
Autobusean, hegazkinean, zineman, San Mamesen...
12. Zertarako bi dimentsio? II
Taulak egiteko
Table: Pertsona ¿ezagun, garrantzitsu? batzuen izen, abizenak eta
jaiotze datak.
Izena Abizena Jaiotze data
James Gosling 1955/05/19
Mike Sheridan ?/?/?
Patrick Naughton 1965/?/?
Joshua Bloch 1961/08/28
Brian Goetz ?/?/?
16. Aurkezpena
1 Zer da objektu arraya?
2 Zertarako bi dimentsio?
3 Zer da 2D arraya?
4 Nola erabili?
5 Gogoratu beharrekoak
17. Zer da 2D arraya?
Bi dimentsiotako arraya == arraydun arraya
18. Aurkezpena
1 Zer da objektu arraya?
2 Zertarako bi dimentsio?
3 Zer da 2D arraya?
4 Nola erabili?
5 Gogoratu beharrekoak
19. Nola deklaratu eta ibili?
/* 4 ilara eta 3 zutabeko "irudia" izena duen
arraya sortzeko: */
int[][] irudia = new int[4][3];
/* azken ilararen (laugarrena, 3 posizioa) azken
zutabean (hirugarrena, 2 posizioa) 3 balioa ezartzen
dugu*/
irudia[3][2] = 3;
/* Array ibilketa */
for(int i=0; i<irudia.length; i++)
for(int j=0; i<irudia[i].length; j++)
zeozerEgin(irudia[i,j]);
20. Aurkezpena
1 Zer da objektu arraya?
2 Zertarako bi dimentsio?
3 Zer da 2D arraya?
4 Nola erabili?
5 Gogoratu beharrekoak
21. Gogoratu
int[][] irudia = new int[4][3];
// 1. dimentsioak 4 elementuko luzeera du (0tik 3ra)
// 2. dimentsioak 3 elementuko luzeera du (0tik 2ra)
irudia.length // bere balioa: 4
irudia[0].length // bere balioa: 3
irudia[3].length // bere balioa: 3
irudia[4].length // ArrayIndexOutOfBoundsException
irudia[0] // 0 posizioan dagoen 3 int dituen arraya
irudia[2] // 2 posizioan dagoen 3 int dituen arraya
irudia[2][2] // 2,2 posizioan dagoen int elementua
irudia[2][3] // ArrayIndexOutOfBoundsException (2. dimentsioan)
22. Ohiko akatsak I
// EZ: luzeerak parametroz pasatu
public void arrayaErakutsi(int lehenengoDimLuzeera,
int bigarrenDimLuzeera,
int[][] biDArraya) {
for(int i=0; i<lehenengoDimLuzeera; i++) {
for(int j=0; j<bigarrenDimLuzeera; j++) {
biDArraya[i][j] = biDArraya[i][j] * 2;
}
}
}
//BAI
public void arrayaErakutsi(int[][] biDArraya) {
for(int i=0; i<biDArraya.length; i++) {
for(int j=0; j<biDArraya[i].length; j++) {
biDArraya[i][j] = biDArraya[i][j] * 2;
}
}
}
23. Ohiko akatsak II
// EZ: 2. dimentsioan dagoen 0. elementuaren luzeera atera beti
public void arrayaErakutsi(int[][] biDArraya) {
for(int i=0; i<biDArraya.length; i++) {
// Ondo dabil, biDArraya[0].length==biDArraya[1].length, etab.
// delako, baina kontzeptualki ez da oso polita
for(int j=0; j<biDArraya[0].length; j++) {
biDArraya[i][j] = biDArraya[i][j] * 2;
}
}
}
//BAI: kontzeptualki hobe ibiliko dugun arrayaren
// luzeera ateratzen badugu
public void arrayaErakutsi(int[][] biDArraya) {
for(int i=0; i<biDArraya.length; i++) {
for(int j=0; j<biDArraya[i].length; j++) {
biDArraya[i][j] = biDArraya[i][j] * 2;
}
}
}
24. Lizentzia
Irudien guztien jabetza intelektuala bere egileena* da,
gainontzeko edukiak Creative Commons by-sa 3.0
lizentziapean daude.
* Hobvias Sudoneighm, Dystopos eta yyycatch.