Diesen Code kürzer schreiben (java)?

4 Antworten

Kürzer? Joa.

int[][] intArr = new int[10][10];
for(int i=0;i<100;i++){
    intArr[i/10][i%10]=i+1;
}

Sollte so passen ;)


hahanoob  12.03.2018, 13:26

Mit for-each könnte es sogar noch kürzer gehen, glaube ich...

0
Etter  12.03.2018, 17:33
@hahanoob

Ich bin mir nicht sicher, ob foreach bei Arrays aus primitiven Datentypen funktioniert. Allerdings wird es vmtl. eher länger, da man dann auf vorherige Elemente zugreifen müsste.

0
int[][] liste = new int[10][10];
for(int i = 0; i < 10; i++){
  for(int j = 0; i < 10; j++){
    liste[i][j] = j + i*10 + 1;
  }
}

durch zwei verschachtelte Schleifen kannst du es kürzer darstellen


xxxcyberxxx  11.03.2018, 23:40
for(int j = 0; i < 10; j++){

hier muss das i natürlich durch ein j ersetzt werden.

0
int a = 0, b = 0, c = 1;
int[][] liste = new int[][];

for (int i = 0; i < 10; i++) {
  for (int k = 0; k < 10; k++) {
    liste[i][k] = c;
    c++;
  }
}