Weird Array Printing in Java
In Java, arrays are more than just a collection of values. They are objects with a specific behavior and representation. When you print an array using System.out.println(arr), you're actually printing the object itself, not its contents.
This default representation displays the array's class name followed by the hexadecimal hash code of the object. So, for example, an integer array could print as [I@3e25a5. This is not what you usually want.
Printing Array Contents
To print the actual values of an array, you have two options:
for (int el : arr) { System.out.println(el); }
Example:
Using the example code you provided:
int[] arr = {20, 50, 40, 60, 100}; System.out.println(Arrays.toString(arr));
This code will print:
[20, 50, 40, 60, 100]
The above is the detailed content of Why Does Java Print Arrays Strangely, and How Can I Print Their Contents Correctly?. For more information, please follow other related articles on the PHP Chinese website!