java arrays

I'm trying to learn java, and the book I'm reading is now describing arrays. I get the 2d arrays pretty good, so if the code that describes the array looks something like this

int array2d [][] = {
  { 34,50,59 },
  { 40,66,70 },
  { 22,44,88 }
} ;

then I can picture that the array would be a grid that looks like this

grid
but then the book throws 3d arrays at me, and doesn't describe it well. I was guessing that the 2d array, is like a square and a 3d array is like a cube, and if that is the case, i'm having a hard time with how the elements of the array are "addressed". For instance, in my 2d array above, the element at array[1][2] is the number 70.

and something like

System.out.println( array2d [1][2] ) ;

should show the number 70.

but for a 3d array like this

int array3d[][][] = {
  { {3,5,7} , {4,7,9} , {1,3,5},
  { {4,8,0} , {3,6,9} , {1,3,8},
  { {3,7,9} , {2,4,1} , {3,2,9}
} ;

I'm not even sure how the numbers are "addressed" let alone how I would make a

System.out.println

statement which would display the numbers I want. For instance, would the last 9 in the last column have an "address" of

System.out.println ( array3d [2] [2] [2] ) ;
LVL 1
JeffBeallAsked:
Who is Participating?
 
for_yanCommented:
so in the picture I drew above

={

 {       } //  each of these 2 d-array, so is suold be {    { 1,2,3  }. {4,5,6   }.,  {4,8,9   }  }

{       } // here also

{       }  // here also

   }


array3d[0]  is a 2d array:  {    { 1,2,3  }. {4,5,6   }.,  {4,8,9   }  }


then array3d[0][1]  is a one-d array  {4,5,6   }.

and array3d[0][1][2] = 6
0
 
for_yanCommented:
Yes your last nine will be element array3d[2][2][2]
But check - I think tyou need more closing braces - there is mistake in your definition of 3d array _ you need to close two more brace
0
 
for_yanCommented:
Thisn of 3d array as a say oone d-imensional array where ewach element is two diensuional array and it will become simplee

={

 {       } //  each of these 2 d-array, so is suold be {    { 1,2,3  }. {4,5,6   }.,  {4,8,9   }  }

{       } // here also

{       }  // here also

   }


In gerenral don't be very much upset - it is difficult to understand - that's why no one normally usee more than 2d -arrays in real code, so don't worry too much
0
 
CEHJCommented:
Good indentation will help you

        int[][][] array3d = {
                {
                    { 3, 5, 7 },
                    { 4, 7, 9 },
                    { 1, 3, 5 }
                },
                {
                    { 4, 8, 0 },
                    { 3, 6, 9 },
                    { 1, 3, 8 }
                },
                {
                    { 3, 7, 9 },
                    { 2, 4, 1 },
                    { 3, 2, 9 }
                }
            };

Open in new window

0
 
JeffBeallAuthor Commented:
Ok, I think I get it now, it helped to know that my guess was correct. Thanks for the help.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.