piper
piper

Reputation: 23

I cant figure out this array

Im doing some personal work, and I am using this array that I thought of, but I cant figure out whats the array is after the code stops running.

int cnt = 0; 
int[][] numarray = new int[2][3]; 
for(int i = 0; i < 3; i++) {
  for(int j = 0; j< 2; j++) {
    numarray[j][i] = cnt; 
    cnt++; 
  }
}

I am pretty sure that it ends at [2][1] but I am not 100% sure of it

Upvotes: 0

Views: 80

Answers (4)

foo
foo

Reputation: 167

Just tried this code:

    int cnt = 0; 
    int[][] numarray = new int[2][3]; 
    for(int i = 0; i < 3; i++) {
      for(int j = 0; j< 2; j++) {
        numarray[j][i] = cnt; 
        cnt++; 
        System.out.print(numarray[j][i]+" ");
      }
      System.out.println("");
    }

and got this result:

0 1 
2 3 
4 5 

The 'cnt' is incremented by 1 for each iteration. That's why you have 0,1,2,3,4,5.

Also learn how to use debugger in an IDE, you can then explore the value of i, j, cnt by yourself.

Upvotes: 1

Tomas
Tomas

Reputation: 138

summary: cnt is incremented by 1 for each iteration in the inner for loop.

cnt is being incremented by 1 i.e. cnt++ is same as cnt = cnt + 1; so count values increment from 0 i.e. 0,1,2,3,4,5... Also note, the value of cnt is assigned to the array being created, where you have numarray[j][i] = cnt;

You can simply printout the value using System.out.println(cnt);

Upvotes: 0

Mohamed Abdallah
Mohamed Abdallah

Reputation: 154

you can iterate the array after code finish

for(int i = 0; i < 2; i++) {
      for(int j = 0; j< 3; j++) {
        System.out.print(numarray[i][j]+" ");
      }
        System.out.println();
    }

Upvotes: 0

star
star

Reputation: 331

why don't you try this?

    int cnt = 0; 
    int[][] numarray = new int[2][3]; 
    for(int i = 0; i < 3; i++) {
      for(int j = 0; j< 2; j++) {
        numarray[j][i] = cnt;
        System.out.println(String.format("array[%d[%d]=%d",j,i,numarray[j][i]));
        cnt++; 
      }
    }

Upvotes: 0

Related Questions