只是好奇,但是当我尝试使用它来反转一个数组时,它总是吐出一些不连贯的乱码而不是反转的数组,例如[I@43256ea2.关于它为什么这样做的任何想法?
public class Fiddle {
public static void main(String[] args) {
int[] number = {1,2,3,4,5};
System.out.println(reverse(number));
}
public static int[] reverse(int[] a) {
int[] b = new int[a.length];
for (int i = 0; i < a.length; i++) {
b[a.length-1-i] = a[i];
}
return b;
}
}
Run Code Online (Sandbox Code Playgroud)
感谢您为何发生这种情况的想法(这可能是因为我忘记了一些事情).
Mar*_*ers 10
使用实用方法java.util.Arrays.toString(int[]):
System.out.println(Arrays.toString(reverse(number)));
Run Code Online (Sandbox Code Playgroud)
数组类不会覆盖Object.toString(),这意味着它们使用Object提供的默认实现,即" type@hashcode_in_hex".该类型的字符串表示int[]的[I,这就是为什么你看到这个"语无伦次的胡言乱语."
| 归档时间: |
|
| 查看次数: |
2720 次 |
| 最近记录: |