打印数组对象int java



我有一个方法,它返回[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的计算。

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

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;
  }
}
 System.out.print(Arrays.deepToString());//neither of them seems to be working
 System.out.print([0].Stringform());

这是死代码。它什么都不做。在第一行中,您要求类Arrays做些什么??我不确定你想在那里做什么。

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

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]);
}

由于存储的是double,因此应该使用:

String.valueOf(z[0]);

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

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

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

        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));

最新更新