0
2D arraya eta objetu      arrayak              ´       Aitor Gomez-Goiri    aitor.gomez@deusto.es       Deustuko Unibertsi...
Aurkezpena  1   Zer da objektu arraya?  2   Zertarako bi dimentsio?  3   Zer da 2D arraya?  4   Nola erabili?  5   Gogorat...
Aurkezpena  1   Zer da objektu arraya?  2   Zertarako bi dimentsio?  3   Zer da 2D arraya?  4   Nola erabili?  5   Gogorat...
Zer da objektu arraya?     Posizio bakoitzean oinarrizko motako datu bat eduki ordez     objektu jakin bat duen arraya da....
Adibidea I  Pertsona[] erabiltzaileak = new Pertsona[4];
Adibidea II   Pertsona[] erabiltzaileak = new Pertsona[4];   erabiltzaileak[0] = new Pertsona("Ander");
Adibidea III   Pertsona[] erabiltzaileak = new Pertsona[4];   erabiltzaileak[0] = new Pertsona("Ander");   erabiltzaileak[...
Adibidea IV  Pertsona[] erabiltzaileak = new Pertsona[4];  erabiltzaileak[0] = new Pertsona("Ander");  erabiltzaileak[3] =...
Adibidea V  Pertsona[] erabiltzaileak = new Pertsona[4];  erabiltzaileak[0] = new Pertsona("Ander");  erabiltzaileak[3] = ...
Aurkezpena  1   Zer da objektu arraya?  2   Zertarako bi dimentsio?  3   Zer da 2D arraya?  4   Nola erabili?  5   Gogorat...
Zertarako bi dimentsio? I      Non aurki dezakegu 2Da?         Autobusean, hegazkinean, zineman, San Mamesen...
Zertarako bi dimentsio? II      Taulak egiteko  Table: Pertsona ¿ezagun, garrantzitsu? batzuen izen, abizenak eta  jaiotze...
Zertarako bi dimentsio? III    Eraikina (pisua, klasea)        E302 → [ESIDE][3][02]
Zertarako bi dimentsio? IV     Matrizeak
Zertarako bi dimentsio? V     ...baita irudietan ere!
Aurkezpena  1   Zer da objektu arraya?  2   Zertarako bi dimentsio?  3   Zer da 2D arraya?  4   Nola erabili?  5   Gogorat...
Zer da 2D arraya?     Bi dimentsiotako arraya == arraydun arraya
Aurkezpena  1   Zer da objektu arraya?  2   Zertarako bi dimentsio?  3   Zer da 2D arraya?  4   Nola erabili?  5   Gogorat...
Nola deklaratu eta ibili?   /* 4 ilara eta 3 zutabeko "irudia" izena duen      arraya sortzeko: */   int[][] irudia = new ...
Aurkezpena  1   Zer da objektu arraya?  2   Zertarako bi dimentsio?  3   Zer da 2D arraya?  4   Nola erabili?  5   Gogorat...
Gogoratu  int[][] irudia = new int[4][3];  // 1. dimentsioak 4 elementuko luzeera du (0tik 3ra)  // 2. dimentsioak 3 eleme...
Ohiko akatsak I  // EZ: luzeerak parametroz pasatu  public void arrayaErakutsi(int lehenengoDimLuzeera,                   ...
Ohiko akatsak II  // EZ: 2. dimentsioan dagoen 0. elementuaren luzeera atera beti  public void arrayaErakutsi(int[][] biDA...
Lizentzia      Irudien guztien jabetza intelektuala bere egileena* da,        gainontzeko edukiak Creative Commons by-sa 3...
Upcoming SlideShare
Loading in...5
×

2D arraya eta objetu arrayak

328

Published on

Programazioa II (2012): 1. gaia

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
328
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "2D arraya eta objetu arrayak"

  1. 1. 2D arraya eta objetu arrayak ´ Aitor Gomez-Goiri aitor.gomez@deusto.es Deustuko Unibertsitatea Ingeniaritza fakultatea http://www.deusto.es 2012/01/31
  2. 2. Aurkezpena 1 Zer da objektu arraya? 2 Zertarako bi dimentsio? 3 Zer da 2D arraya? 4 Nola erabili? 5 Gogoratu beharrekoak
  3. 3. Aurkezpena 1 Zer da objektu arraya? 2 Zertarako bi dimentsio? 3 Zer da 2D arraya? 4 Nola erabili? 5 Gogoratu beharrekoak
  4. 4. Zer da objektu arraya? Posizio bakoitzean oinarrizko motako datu bat eduki ordez objektu jakin bat duen arraya da. String, Pertsona, etab.
  5. 5. Adibidea I Pertsona[] erabiltzaileak = new Pertsona[4];
  6. 6. Adibidea II Pertsona[] erabiltzaileak = new Pertsona[4]; erabiltzaileak[0] = new Pertsona("Ander");
  7. 7. Adibidea III Pertsona[] erabiltzaileak = new Pertsona[4]; erabiltzaileak[0] = new Pertsona("Ander"); erabiltzaileak[3] = new Pertsona("Irati");
  8. 8. Adibidea IV Pertsona[] erabiltzaileak = new Pertsona[4]; erabiltzaileak[0] = new Pertsona("Ander"); erabiltzaileak[3] = new Pertsona("Irati"); erabiltzaileak[1] = new Pertsona("Mikel");
  9. 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. 10. Aurkezpena 1 Zer da objektu arraya? 2 Zertarako bi dimentsio? 3 Zer da 2D arraya? 4 Nola erabili? 5 Gogoratu beharrekoak
  11. 11. Zertarako bi dimentsio? I Non aurki dezakegu 2Da? Autobusean, hegazkinean, zineman, San Mamesen...
  12. 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 ?/?/?
  13. 13. Zertarako bi dimentsio? III Eraikina (pisua, klasea) E302 → [ESIDE][3][02]
  14. 14. Zertarako bi dimentsio? IV Matrizeak
  15. 15. Zertarako bi dimentsio? V ...baita irudietan ere!
  16. 16. Aurkezpena 1 Zer da objektu arraya? 2 Zertarako bi dimentsio? 3 Zer da 2D arraya? 4 Nola erabili? 5 Gogoratu beharrekoak
  17. 17. Zer da 2D arraya? Bi dimentsiotako arraya == arraydun arraya
  18. 18. Aurkezpena 1 Zer da objektu arraya? 2 Zertarako bi dimentsio? 3 Zer da 2D arraya? 4 Nola erabili? 5 Gogoratu beharrekoak
  19. 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. 20. Aurkezpena 1 Zer da objektu arraya? 2 Zertarako bi dimentsio? 3 Zer da 2D arraya? 4 Nola erabili? 5 Gogoratu beharrekoak
  21. 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. 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. 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. 24. Lizentzia Irudien guztien jabetza intelektuala bere egileena* da, gainontzeko edukiak Creative Commons by-sa 3.0 lizentziapean daude. * Hobvias Sudoneighm, Dystopos eta yyycatch.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×