【发布时间】:2014-01-17 21:13:47
【问题描述】:
int n = 10;
double[] x = {2.5,0.5,2.2,1.9,3.1,2.3,2,1,1.5,1.1};
double[] y = {2.4,0.7,2.9,2.2,3.0,2.7,1.6,1.1,1.6,0.9};
double sumx = 0.0, sumy = 0.0, sumx2 = 0.0;
for(int i = 0; i < n; i++) {
sumx += x[i];
sumy += y[i];
}
double xbar = sumx / n;
double ybar = sumy / n;
我有 x 和 y 的平均值的 2 个结果现在我想创建一个新数组,但是这个新数组应该包括例如:
double[] x1 =[2.5-xbar,0.5-xbar,.....];
double[] x2 =[2.4-ybar,0.7-ybar,.....];
我想通过使用任何循环来获取这些数组,我尝试构建但未能成功。 我的代码:
double[] xadj = new double[10],yadj = new double[10];
for(int i=0;i<n-1;i++){
xadj[i]+=x[i]-xbar;
yadj[i]+=y[i]-ybar;
}
System.out.println(xadj);
System.out.println(yadj);
[输出]:
[D@17dfafd1
[D@5e8fce95
我该如何解决这个问题?
【问题讨论】:
-
如果要打印数组的内容,请使用
System.out.println(Arrays.toString(xadj))。 -
或者打印 - 遍历数组并分别打印出每个哀叹
-
也不要用
n,可以用array.length -
System.out.println(Arrays.toString(xadj)) 解决的问题;谢谢。 ZouZou,如果您输入答案,我将接受它作为真实答案
-
@user3138900 虽然 zouzou 的评论是正确的,但我在回答中指出您应该阅读的另一个问题