复制和打印阵列?

时间:2014-04-11 23:54:24

标签: java arrays

每当我尝试打印从数组stonefist复制到数组vaporeon的元素时,我得到

This new array: [I@175705e

这是我的问题吗?或者这是我的java版本的问题吗?

public class ArrayTest
{
    public static void main(String[] args)
    {
        int[] stonefist = new int[6];
        int[] vaporeon = new int[stonefist.length];
        stonefist[0] = 34;
        stonefist[1] = 2;
        stonefist[2] = 14;
        stonefist[3] = 34;
        stonefist[4] = 58;
        stonefist[5] = 4;
        int jolteon = 0;
        int flareon = 0;
        int dragonite = Integer.MIN_VALUE;
        for(int i = 0; i < stonefist.length; i++)
            {
                System.out.println(stonefist[i]);
                if(stonefist[i] > dragonite)
                {
                   dragonite = stonefist[i];                
                }                  
                 jolteon = jolteon + stonefist[i];
                 flareon = jolteon/stonefist.length;
                 System.arraycopy(stonefist,1,vaporeon,0,3);
            }
        System.out.println("The largest number is: " + dragonite);   
        System.out.println("The average is: " + flareon);
        System.out.print("This new array: " + vaporeon);
    }   
}

2 个答案:

答案 0 :(得分:0)

这只是Object.toString()-method的默认结果,对您的Java版本没有问题。

您需要的是一种遍历数组并打印每个元素的方法,例如Arrays.toString(...)

然后你可以使用它:

System.out.print("This new array: " + Arrays.toString(vaporeon));

答案 1 :(得分:0)

实际上是打印出Array的内存地址。您需要创建一个循环或一个包含循环的方法,该循环将逐步遍历该数组,并逐个打印所有值。