AP CSA 4.11 Exercise 2: 2D Array Creation and Access Applied Practice

Unit 4: Data Collections · Lesson 4.11 · Exercise 2

2D Array Creation and Access: Applied Practice

Six scenarios on rows versus columns, and the two lengths that a 2D array actually has.

How this one is different

The exercise-1 editor asks you to build a grid. These six ask which subscript is which, and what arr.length means when the thing it measures is an array of arrays.

Applied Practice

6 questions · scenario driven · every answer is recorded for your teacher

Question 1 of 6Apply
A program executes int[][] grid = new int[3][7];
What do grid.length and grid[0].length report?
Incorrect. Reversed. The first subscript in the declaration is the row count.
Incorrect. No length field reports 21.
Incorrect. Neither length reports a total. There is no single field for the element count.
Correct. Correct. A 2D array is an array of row arrays, so the outer length counts rows.
Question 2 of 6Analyze
A grid is declared new int[4][6] and a program accesses grid[5][2].
What happens?
Incorrect. The element type is int, which is never null, and the access throws before returning anything.
Incorrect. Defaults apply to elements that exist. Row 5 does not exist.
Correct. Correct, and note the failure is on the FIRST subscript; the column index 2 was perfectly legal.
Incorrect. Java does not wrap indices.
Question 3 of 6Apply
A program must store a seating chart with 12 rows of 30 seats.
Which declaration matches that description?
Incorrect. That creates 30 rows of 12, which describes a different room.
Correct. Correct. Rows first, columns second, matching how the chart is described.
Incorrect. A 1D array of 42 loses the row and column structure entirely.
Incorrect. This leaves the row arrays null, so every access throws NullPointerException.
Question 4 of 6Analyze
A 2D array is built where different rows have different lengths.
Is this legal in Java, and what does it mean for traversal?
Correct. Correct, and using grid[0].length is a real bug that only shows up on jagged data.
Incorrect. No padding occurs. Each row keeps its own length.
Incorrect. Element type is irrelevant to jaggedness.
Incorrect. Jagged arrays are ordinary Java.
Question 5 of 6Evaluate
A student says "grid[2][5] means column 2, row 5".
Is that right?
Incorrect. Squareness hides the mistake because both counts match, but it does not change the meaning.
Incorrect. The convention is fixed by the language, not chosen at declaration.
Incorrect. The row comes first, following the array-of-arrays structure.
Correct. Correct, and it follows from grid[2] being a complete row array in its own right.
Question 6 of 6Apply
A program needs the value in the bottom-right corner of a rectangular grid, without hardcoding sizes.
Which expression is correct?
Incorrect. Uses the ROW count for the column index, which is wrong whenever the grid is not square.
Incorrect. Both subscripts are one past the end and it throws.
Correct. Correct: last row, last column, each computed from its own length.
Incorrect. That is the top-left corner.

Where to go next

Get in Touch

Whether you're a student, parent, or teacher — I'd love to hear from you.

Just want free AP CS resources?

Enter your email below and check the subscribe box — no message needed. Students get daily practice questions and study tips. Teachers get curriculum resources and teaching strategies.

Typically responds within 24 hours

Message Sent!

Thanks for reaching out. I'll get back to you within 24 hours.

🏫 Welcome, fellow educator!

I offer curriculum resources, practice materials, and study guides designed for AP CS teachers. Let me know what you're looking for — whether it's classroom materials, a guest speaker, or Teachers Pay Teachers resources.

Email

[email protected]

📚

Courses

AP CSA, CSP, & Cybersecurity

Response Time

Within 24 hours

Prefer email? Reach me directly at [email protected]