2016-04-02 16 views
0

Ich habe eine 2d-Array namens tiles[x][y], die bis 9 geht so hat 100 Dinge drin.alles von einem 2d-Array in ein normales Array setzen

Wie bekomme ich ein anderes Array und alles aus dem 2d-Array in das normale Array?

int counter = 0; 
    for (int x = 0; x < mapWidth; x++) { 
     for (int y = 0; y < mapHeight; y++) { 
      tiles[y][x] = new loopVak(Color.WHITE, x*tileWidth, y*tileHeight); 
      } 
     } 

Dies ist, wie das 2D-Array hergestellt ist, mapwidth und mapheight 10.

+0

Wie können Sie ein normales Array oder ein einzelnes Dimensions-Array in dem Code erstellen, den Sie veröffentlicht haben? Können Sie das erklären? – Blip

Antwort

0

ist Wenn Sie tiles zu einem neuen 1D Array konvertieren möchten, dann können Sie einfach so etwas tun:

int k = 0, newArray[] = new loopVak[100]; 
for(int i = 0; i < mapWidth; i++) { 
    for(int j = 0; j < mapHeight; j++) { 
     newArray[k++] = tiles[i][j]; 
    } 
} 

Wenn Sie nicht wollen, der 2D-Array an erster Stelle, dann können Sie etwas tun:

int counter = 0, newArray[] = new loopVak[100]; 
for(int x = 0; x < mapWidth; x++) { 
    for(int y = 0; y < mapHeight; y++) { 
     newArray[counter++] = new loopVak(Color.WHITE, x * tileWidth, y * tileHeight); 
    } 
} 
Verwandte Themen