Does Java support multidimensional arrays?
The Java programming language does not really support multi-dimensional arrays. It does, however, support arrays of arrays.
In Java, a two-dimensional array x is really an array of one-dimensional arrays:
String[][] x = new String[5][5];
The expression x[i] selects the ith one-dimensional array; the expression x[i][j] selects the jth element from that array.
You may figure out how three-dimensional array y is. It is an array of two-dimensional arrays.
String[][][] y = new String[5][5][5];
The expression y[i] selects the ith two-dimensional array; the expression y[i][j] selects the jth one-dimensional array; the expression y[i][j][k] selects the kth element from the y[i][j] selected one-dimensional array.
In the Java built-in multi-dimensional arrays, array indices in each dimension range from zero to length - 1, where length is the array length in the given dimension. In the above example, the length for each dimensional is 5. The number of dimensions and the size of each dimension is fixed once the array has been allocated.
The important difference between multi dimensional arrays, as in C/C++ and Java arrays, is that each array does not have to be of the same length. If you think of a two-dimensional array as a matrix, the matrix does not have to be a rectangle.
Consider the following method of initializing an array of arrays:
Stirng[][] z = { {"D00"}, {"D10","D11"}, {"D20","D21","D22"} };
This does not produce the same set of data as the following method:
String[][] z = new String[3][3];
Both arrays have 3 rows but each row in the first example has a different number of columns, each row in the second example has an equal number of columns.
References
Most Recent java Faqs
- How to avoid an java.util.ConcurrentModificationException with ArrayList?
- How to convert a given array to a list in Java?
- How to make Java objects eligible for garbage collection?
- What are local variables in Java?
- What are instance variables in Java?
- How many backslashes?
- What are class variables in Java?
Most Viewed java Faqs
- How to use HttpURLConnection POST data to web server?(24745)
- What is runtime polymorphism in Java?(18324)
- How to add BASIC Authentication into HttpURLConnection?(16080)
- What is String literal pool?(14754)
- Can the run() method be called directly to start a thread?(13988)
- What does Class.forname method do?(10593)
- Can transient variables be declared as 'final' or 'static'?(10445)