The Java Tutorials have been written for JDK 8. Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available.
See Java Language Changes for a summary of updated language features in Java SE 9 and subsequent releases.
See JDK Release Notes for information about new features, enhancements, and removed or deprecated options for all JDK releases.
An array is an object of reference type which contains a fixed number of components of the same type; the length of an array is immutable. Creating an instance of an array requires knowledge of the length and component type. Each component may be a primitive type (such as byte
, int
, or double
), a reference type (such as
String
,
Object
, or
java.nio.CharBuffer
), or an array. Multi-dimensional arrays are really just arrays which contain components of array type.
Arrays are implemented in the Java virtual machine. The only methods on arrays are those inherited from
Object
. The length of an array is not part of its type; arrays have a length
field which is accessible via
java.lang.reflect.Array.getLength()
.
Reflection provides methods for accessing array types and array component types, creating new arrays, and retrieving and setting array component values. The following sections include examples of common operations on arrays:
All of these operations are supported via static
methods in
java.lang.reflect.Array
.