程序如下:
class ArrayDemo 
{
static String[] Reverse(String [] Arr)
{
String[] newArr = new String[Arr.length];
for(int index = Arr.length-1;index>=0;index--)
{
newArr[Arr.length-1-index] =Arr[index];
}
return newArr;
}
public static void main(String[] args) 
{
String[] Arr =new String[]{"A","B","C","D","E"};
String[] newArr = ArrayDemo.Reverse (Arr);
System.out.println(newArr);
}
运行结果:[Ljava.lang.String;@15db9742
为何结果不是:E,D,C,B,A

解决方案 »

  1.   

    Arrays.toString(newArr).....
      

  2.   

    数组是个对象,数组的 toString 是不会把数组里的内容打印出来的。
    可以用 Arrays.toString 把数组转成字符串。
      

  3.   

    newArr是个对象
      

  4.   

    直接打印对象是用的Object类中的toString方法,(具体可以查看源码),返回值是对象的类型@哈希值,你要打印数组里面的内容,要用Arrays这个类中的toString方法.即Arrays.toString(newArr)
      

  5.   

    输出的是数组的哈希地址,for-each输出一下就好
    for (String string : newArr) {
    System.out.println(string);
    }
      

  6.   

    因为引用Arr实际上放的是哈希地址
      

  7.   

    这个是对象啊,可以for遍历,也可以tostring
      

  8.   

    String[] Arr =new String[]{"A","B","C","D","E"};
     String[] newArr = ArrayDemo.Reverse (Arr);
     System.out.println(newArr);
    Arr 是一个对象。对象直接打印出来肯定是哈希值。
      

  9.   

    学习学习 觉得不错 我最近也刚学java