Two-dimensional (2D) arrays are indexed by two subscripts, one for the row and one for the column Each element in the 2D array must by the same type, either a primitive type or object type
Previous PDF | Next PDF |
[PDF] Two-Dimensional Arrays
Two-dimensional (2D) arrays are indexed by two subscripts, one for the row and one for the column Each element in the 2D array must by the same type, either a primitive type or object type
[PDF] Chapter 7 Multidimensional Arrays
Listing 7 1 gives an example with a method that returns the sum of all the elements in a matrix LISTING 7 1 PassTwoDimensionalArray java (Page 240) import
[PDF] Multidimensional Arrays
In Java, each subscript must be enclosed in a pair of square brackets • You can also use 8 4 Passing Two-Dimensional Arrays to Methods • You can pass a
[PDF] CS 106A, Lecture 17 2D Arrays and Images
Java infers the array length The class Arrays in package java util has useful methods for A 2D array is an array where every element is itself an array
[PDF] 2D Array Exercise
Practice using two dimensional arrays to input and output data in a tabular format A Simple 2D TwoDArray java for (int col=0; col < table[row] length; col++)
[PDF] Topic 26 Two Dimensional Arrays - UT Austin Computer Science
Jeffery Ullman Based on slides for Building Java Programs by Reges/Stepp, found at Write a method to find the max value in a 2d array of ints Write a
[PDF] Unit 8: 2D Arrays - Long Nguyen
1) Building Java Programs: A Back to Basics Approach by Stuart Reges 2D Arrays A two-dimensional (2D) array has rows and columns A row has horizontal elements 2) For each k, where 0
[PDF] 2D Array Problems - Rose-Hulman
This code prints out a two dimensional array of integers The function returns the distance between the of the pair in the map of java they have to be typed
[PDF] Using Two-Dimensional Arrays
The new, five-floor Java Hotel features a free continental breakfast and, at The people who do serious Java like to think of a two-dimensional array as an array of with an array of objects, you're taking advantage of methods that are already
[PDF] 2d dft in digital image processing
[PDF] 2d discrete fourier transform matlab code
[PDF] 2d fft algorithm
[PDF] 2d fft image matlab
[PDF] 2d fft of image
[PDF] 2d fft radar
[PDF] 2d fft symmetry
[PDF] 2d fftshift
[PDF] 2d fourier transform examples
[PDF] 2d fourier transform mathematica
[PDF] 2d fourier transform properties
[PDF] 2d heat equation derivation
[PDF] 2d image to 3d model python
[PDF] 2d picture to 3d model
Two-Dimensional Arrays
15-110 Summer 2010
Margaret Reid-Miller
Summer 2010 15-110 (Reid-Miller)
Two-Dimensional Arrays
• Arrays that we have consider up to now are one-dimensional arrays, a single line of elements. • Often data come naturally in the form of a table, e.g., spreadsheet, which need a two-dimensional array.• Examples: • Lab book of multiple readings over several days • Periodic table • Movie ratings by multiple reviewers. • Each row is a different reviewer • Each column is a different movie
2Summer 2010 15-110 (Reid-Miller)
Two-Dimensional Arrays
• Two-dimensional (2D) arrays are indexed by two subscripts, one for the row and one for the column.
• Example: row col rating[0][2] = 2! !rating[1][3] = 8!0 1 2 3
04 6 2 5
17 9 4 8
26 9 3 7
movie (second index) (first index) reviewer rating 3Summer 2010 15-110 (Reid-Miller)
Similarity with 1D Arrays
• Each element in the 2D array must by the same type,• either a primitive type or object type• Subscripted variables can be use just like a variable:
! rating[0][3] = 10;! • Array indices must be of type int and can be a literal, variable, or expression. rating[3][j] = j; • If an array element does not exists, the Java runtime system will give you an !!ArrayIndexOutOfBoundsException 4Summer 2010 15-110 (Reid-Miller)
Declaring 2D Arrays
• Declare a local variable rating that references a 2D array of int: • Declare a field family that reference a 2D array ofGiftCards:
• Create a 2D array with 3 rows and 4 columns and assign the reference to the new array to rating: • Shortcut to declare and create a 2D array: int[][] rating; private GiftCard[][] family;!rating = new int[3][4];!int[][] rating = new int[3][4]; 5Summer 2010 15-110 (Reid-Miller)
Example 1
• Find the average rating by the reviewer in row 2.nt sum = 0;! for (int col = 0; col <= 3; col++) {!! sum += rating[2][col];! }! double average = (double) sum / 4;!
7 3 9 6
28 4 9 7
15 2 6 4
03 2 1 0
movie reviewer 6Summer 2010 15-110 (Reid-Miller)
Size of 2D Arrays
• When you write a method that has a 2D array as a parameter, how do you determine the size of the array?
7 Hint: • Consider a variable words, a 1D array of String references.• What is the length of the array? • What is the length of the word at index 2? words!this!that!what!
0 1 2Summer 2010 15-110 (Reid-Miller)
2D Array Implementation
• A 2D array is a 1D array of (references to) 1D arrays. int[][] rating = new int[3][4];! 0 1 20 1 2 3
8Summer 2010 15-110 (Reid-Miller)
Size of 2D Arrays
• Given!!int[][] rating = new int[3][4]; • What is the value of rating.length? • What is the value of rating[0].length? !
Answer: 3, the number of rows (first dimension) Answer: 4, the number of columns (second dimension) 9Summer 2010 15-110 (Reid-Miller)
Example 2
• Find the number of ratings above the value of the parameter.public int countAbove(int[][] rating, int num) {! int count = 0;! for (int row = 0; row < ; row++) {! for (int col = 0; col < ; col++) {!! if (rating[row][col] > num)! count++; ! }! }! return count;!} !
number of rows number of columns rating.length!rating[0].length! 10Summer 2010 15-110 (Reid-Miller)
Example 3
• Print the average rating for the movie in column 3. int sum = 0;!for (int row = 0; row < ______________ ; row++) {!!sum += rating[_____][____];!}!System.out.println((double) sum / ______________ );!rating.length row 3!rating.length 2 1 0
7 3 9 6 8 4 9 7 5 2 6 4 3 2 1 0
movie reviewer 11Summer 2010 15-110 (Reid-Miller)
Ragged Arrays
• Since a 2D array is a 1D array of references to 1D arrays, each of these latter 1D arrays (rows) can have a different length.
• How? Use an initializer list. !!int[][] rating = { {3,5,7,9}, {4,2}, ! {5,7,8,6}, {6} };! row 1 row 23 5 7 9 4 2 5 7 8 6 6
12Summer 2010 15-110 (Reid-Miller)
Example 3 Revisited
• Print the average rating for the movie in column 3.int count = 0;!double sum = 0;!for (int row = 0; row < rating.length; row++) {!! if (_____________________ > 3) {! sum += rating[_____][_____];! count++;! }!}!if (count > 0) {! System.out.println((double) sum / count);!
3 5 7 9 4 2 5 7 8 6 6 rating[row].length row 3!
13Summer 2010 15-110 (Reid-Miller)
2D Array of Object References
• Recall that creating an array of object references fills the array with null values. • Example:GiftCard[][] family = new GiftCard[3][4]!
null 14Summer 2010 15-110 (Reid-Miller)
2D Array of Object References
• Need to create the objects and assign the references to the array elements. • Example:!family[0][1] = new GiftCard("Macy's", 50.0);!!family[1][3] = new GiftCard("CVS", 15.0);!Macy's CVS null
15Summer 2010 15-110 (Reid-Miller)
Example 4
• Print the total value of the gift cards for each family member (rows): printValueOfRows(family); !
public static void printValueOfRows(______________ data) {! for (int row = 0; row < __________________; row++) {! double total = ___________; // find total for the row! for (int col = 0; col < ___________________; col++) {! if (data[row][col] != ___________) {! total += data[row][col].getBalance();! }! }! System.out.println("Row " + row + ": $" + total);! }!}!
data.length data[row].length null 0.0!