Multidimensional Arrays Multidimensional Arrays Arrays are good for



![Multidimensional Arrays § 2 D array declaration: § § <data type>[ ][ ] <name>; Multidimensional Arrays § 2 D array declaration: § § <data type>[ ][ ] <name>;](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-4.jpg)
![Multidimensional Arrays Accessing elements: § grades[0][0] = 90; § 0 0 1 2 3 Multidimensional Arrays Accessing elements: § grades[0][0] = 90; § 0 0 1 2 3](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-5.jpg)
![Multidimensional Arrays Accessing elements: § grades[0][0] = 90; Grades[8][5] = 65; § § 0 Multidimensional Arrays Accessing elements: § grades[0][0] = 90; Grades[8][5] = 65; § § 0](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-6.jpg)
![Multidimensional Arrays for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) Multidimensional Arrays for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++)](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-7.jpg)



![Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98 Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-11.jpg)
![Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98 Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-12.jpg)
![Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98 Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-13.jpg)
![Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98 Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-14.jpg)
![Multidimensional Arrays n grades[0][1] = 34 0 1 2 90 34 65 78 57 Multidimensional Arrays n grades[0][1] = 34 0 1 2 90 34 65 78 57](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-15.jpg)
![Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length;](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-16.jpg)
![Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length;](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-17.jpg)
![Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length;](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-18.jpg)
![Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length;](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-19.jpg)
![Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length;](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-20.jpg)
![Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length;](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-21.jpg)
![Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length;](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-22.jpg)

![Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ]; Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ];](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-24.jpg)
![Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ]; Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ];](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-25.jpg)
![Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ]; Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ];](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-26.jpg)
![Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ]; Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ];](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-27.jpg)

![Multidimensional Arrays public static int[ ][ ] mult. Table(int n){ int[ ][ ] table Multidimensional Arrays public static int[ ][ ] mult. Table(int n){ int[ ][ ] table](https://slidetodoc.com/presentation_image_h2/26abac343c81a9ed1053a5c4881b5634/image-29.jpg)
- Slides: 29
Multidimensional Arrays
Multidimensional Arrays § Arrays are good for storing lists of data What about storing a table? 14 8 9 8 7 78 90 89 70 70 7 09 09 09 79 70 87 97 07 87 89 90 7 87 7 70 87 09 70 70 7 09 09 09 89 08 77 78 8 67 87 56 65 45 30 91 70 39 37 30 37 08 37 38 89 20 89 78 27 87 24 27 78 28 27 89 78 80 80 89 89 89 78 46 45 70 20 9 7 72 §
Multidimensional Arrays § § If arrays can store any object, why not have them store arrays? An array of arrays is a list of lists, or a table!
Multidimensional Arrays § 2 D array declaration: § § <data type>[ ][ ] <name>; int[ ][ ] grades; String[ ][ ] seating. Chart; 2 D array definition: § § grades = new int[9][15]; seating. Chart = new String[5][9]; § Remember, each reference in seating. Chart must be initialized!
Multidimensional Arrays Accessing elements: § grades[0][0] = 90; § 0 0 1 2 3 4 5 6 7 90 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Multidimensional Arrays Accessing elements: § grades[0][0] = 90; Grades[8][5] = 65; § § 0 0 1 1 2 3 4 5 6 7 8 90 2 3 4 5 6 7 65 9 10 11 12 13 14
Multidimensional Arrays for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) averages[i] += grades[i][j]; 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 90 34 65 87 65 78 57 98 87 65 77 88 99 43 76 78 57 98 87 65 77 90 34 65 87 65 78 57 77 88 2 34 65 87 65 78 57 77 87 65 78 45 76 44 3 57 98 87 65 34 65 87 65 78 57 98 87 65 77 88 4 65 77 90 34 65 87 65 78 78 57 98 87 65 77 77 87 65 78 57 77 87 76 67 89 82 92 17 95 98 87 78 57 98 87 65 77 90 34 65 87 76 67 89 82 65 65 78 77 87 76 67 89 82 92 17 65 77 90 34 98 87 65 34 65 78 57 98 87 65 77 65 34 65 1 5 6 87 7 57
Multidimensional Arrays n How are 2 D arrays really stored? 0 1 2 90 34 65 78 57 98 2 34 65 87 3 57 98 87 0 1
Multidimensional Arrays n How are 2 D arrays really stored? ¡ 2 D arrays are arrays of arrays 0 1 2 90 34 65 78 57 98 2 34 65 87 3 57 98 87 0 1
Multidimensional Arrays n How are 2 D arrays really stored? ¡ 2 D arrays are arrays of arrays 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87
Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87
Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87
Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87
Multidimensional Arrays n grades[0][1] = 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87
Multidimensional Arrays n grades[0][1] = 34 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87
Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) averages[i] += grades[i][j]; 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87 0 j 0
Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) averages[i] += grades[i][j]; 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87 0 j 0
Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) averages[i] += grades[i][j]; 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87 0 j 1
Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) averages[i] += grades[i][j]; 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87 0 j 2
Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) averages[i] += grades[i][j]; 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87 1 j 0
Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) averages[i] += grades[i][j]; 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87 1 j 1
Multidimensional Arrays i for(int i=0; i< grades. length; i++) for(int j=0; j< grades[i]. length; j++) averages[i] += grades[i][j]; 0 1 2 90 34 65 78 57 98 2 34 65 3 57 98 0 1 0 0 1 2 90 34 65 0 1 2 1 78 57 98 87 2 0 1 2 87 3 34 65 87 0 1 2 57 98 87 1 j 2
Multidimensional Arrays § § Although we can think of it in table format for accessing, it is not necessarily a table! int [ ][ ][ ] three. D = new int[10][ ][ ]; three. D[10] = new int [10][ ]; three. D[10][5] = new int[7]; three. D[10][5][4] = 6; What is the Memory Diagram?
Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ]; three. D[9] = new int [10][ ]; three. D[9][5] = new int[7]; three. D[9][5][4] = 6; § 0 1 2 3 4 5 6 7 8 9
Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ]; three. D[9] = new int [10][ ]; three. D[9][5] = new int[7]; three. D[9][5][4] = 6; § 0 1 2 3 4 5 6 7 8 9
Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ]; three. D[9] = new int [10][ ]; three. D[9][5] = new int[7]; three. D[9][5][4] = 6; § 0 1 2 3 4 5 6 7 8 9 0 1 2 3 6 7 8 9 4 5 6
Multidimensional Arrays int [ ][ ][ ] three. D = new int[10][ ][ ]; three. D[9] = new int [10][ ]; three. D[9][5] = new int[7]; three. D[9][5][4] = 6; § 0 1 2 3 4 5 6 7 8 9 0 1 2 3 6 7 8 9 4 6 5 6
Multidimensional Arrays § § Exercise: Write a method that takes an int n, and returns the multiplication table (2 D array) for all numbers from 1 to n
Multidimensional Arrays public static int[ ][ ] mult. Table(int n){ int[ ][ ] table = new int[n][n]; for(int i=1; i <= n; i++) for(int j=1; j<=n; j++) table[i][j] = i*j; return table; }