Skip to Content
Beginning C# 3.0
book

Beginning C# 3.0

by Jack Purdum
May 2008
Beginner
550 pages
13h 22m
English
Wrox
Content preview from Beginning C# 3.0

8.3. Multidimensional Arrays

So far I've discussed one-dimensional arrays, which are great for describing lists of data. However, data are often organized in tables of rows and columns. For example, you might want to see the distribution of grades in a class where the columns represent the student's class and the rows represent the grades, as shown in Table 8-2.

Table 8-2. Table 8-2
GradesFreshmenSophomoresJuniorsSeniors
A1465
B47114
C1113113
D3431
F2100

If you wanted to define an array for storing the data shown in Table 8-2, you might use the following code:

int[,] grades = new int[5, 4];

This definition states that you want to define a table, or matrix, with five rows and four columns. Note the comma within the brackets in the definition. The first comma in the brackets on the left side of the assignment expression simply tells C# that you are about to define a two-dimensional array. The second set of brackets specifies exactly how many elements there are in the table. Because there are two dimensions, you say the grades array has a rank of two. That is, the term rank refers to the number of dimensions associated with the array.

You can use more than two dimensions if you need them. For example, 3D graphics are drawn using X, Y, and Z coordinates. To define an array with three dimensions, you might use this code:

int[,,] images = new int[20, 100, 200];

This defines a data cube rather than a table or list. Note that if you want N dimensions (such as three), there are always N − 1 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Navigating the Metaverse

Navigating the Metaverse

Cathy Hackl, Dirk Lueth, Tommaso Di Bartolo, John Arkontaky, Yat Siu
Adapting to the Sharing Economy

Adapting to the Sharing Economy

Wolfgang Kathan, Viktoria Veider, Kurt Matzler

Publisher Resources

ISBN: 9780470261293Purchase book