打印数组对象int java

时间:2015-03-17 13:15:56

标签: java arrays loops printing

我有一个返回[2]数组的方法,返回的每个值都是双精度数:

public class additions;
{

    public double [] Number ()
    double [] z;
    z = new double [2]

    z[0]= 12+5;
    z[1]= 58-8; 
    return z;// I would assumed values returned are stored in "Number";
}

然后在主课上,我有

     additions  calculus_1 = new additions();
     System.out.print(Arrays.deepToString());//neither of them seems to be working
     System.out.print([0].Stringform());
     System.out.print(calculus_1.Number());

我无法打印答案,你能使用循环吗?我应该在哪里打印出主要课程中的答案?

我正在寻找动态,因为我将更改Z的计算。

4 个答案:

答案 0 :(得分:2)

您的方法返回数组,因此要打印它,您需要:

System.out.print(Arrays.toString(calculus_1.Number()));

我不确定在将代码复制到问题时是否存在拼写错误,但是您的班级缺少几个大括号并且在错误的地方有一些分号。

这应该有效:

public class additions
{
  public double [] Number ()
  {
    double [] z;
    z = new double [2];

    z[0]= 12+5;
    z[1]= 58-8; 
    return z;
  }
}

答案 1 :(得分:0)

由于您要存储双精度数,因此应使用:

String.valueOf(z[0]);

此外,您可以使用for循环,如下所示:

for(int i = 0; i < z.length; i++) {
   System.out.println(String.valueOf(z[i]));
}

答案 2 :(得分:0)

这应该打印数组。但我不确定这是不是你的问题?

        double[] d_array = new double[2];
        d_array[0] = 1;
        d_array[1] = 2;
        String printArray = "";
        for (double d : d_array) {
            printArray = printArray + ", " + d;
        }
        System.out.println(printArray.substring(2));

答案 3 :(得分:0)

 System.out.print(Arrays.deepToString());//neither of them seems to be working
 System.out.print([0].Stringform());

这是死代码。它什么都不做。在第一行你要求类数组做某事?我不确定你想做什么。

同时更改可能与Java冲突的Number()函数的名称。还需要括号和分号:

public double [] arrayStuff() {
    double [] z;
    z = new double [2];

    z[0]= 12+5;
    z[1]= 58-8; 
    return z;
}

以下是我对你想要的假设:

additions  calculus_1 = new additions();
double[] result = calculus_1.arrayStuff();

for (int i = 0; i < result.length; i++) {
    System.out.println(result[i]);
}