-2

I'm trying to create this two dimensional array in java and print the output, but when it outputs I am not getting the numbers or a two-dimensional structure. Java appears to be giving me what looks like memory addresses for each array result.

My code

public static int[][] generateSampleTable(int smallest, int largest, int sampleSize)
{
   int sampleTable[][] = new int[sampleSize][2];
   for (int i = 0; i < sampleSize; i++)
   {
   sampleTable[i][0] = 5150;
   sampleTable[i][1] = 2738;
   }
   return sampleTable;
}
public static void main(String[] args){
    System.out.println(Arrays.toString(generateSampleTable(1,1,10)));
}

My output appears like this:

[[I@803816, [I@22b4b7, [I@1079ed1, [I@231c5d, [I@178cf47, [I@d65c13, [I@1fca60e, [I@1f99518, [I@fa7e97, [I@90925f]

Ignore the smallest and largest arguments in that method as I haven't implemented the calculations for them yet and am not using them right now.

Other than what you see here, I guess I should tell you that yes, I imported java.util.Arrays

Not sure what is going on. Any help would be appreciated.

Thanks

Habitat
  • 709
  • 11
  • 23

1 Answers1

0

Arrays.toString() knows how to print 1 dimensional arrays. For 2-dimensional arrays you should use Arrays.deepToString().

Eran
  • 387,369
  • 54
  • 702
  • 768