Java:一个差异的int数组
我有一个x和y坐标的数组,我将其传递给一个方法,在该方法中它检查第一个差异。我的问题当我返回它时,我的程序只显示前两个坐标的第一个差值Java:一个差异的int数组,java,arrays,Java,Arrays,我有一个x和y坐标的数组,我将其传递给一个方法,在该方法中它检查第一个差异。我的问题当我返回它时,我的程序只显示前两个坐标的第一个差值 System.out.println(Arrays.toString(ardDifference)); fin.close(); } public static double Difference(double ardY[]) { double ardDifference[] = new doub
System.out.println(Arrays.toString(ardDifference));
fin.close();
}
public static double Difference(double ardY[]) {
double ardDifference[] = new double[5];
for (int i = 0; i < 5; i++) {
ardDifference[i] = ardY[i + 1] - ardY[i];
return ardDifference[i];
}
return 0;
}
}
System.out.println(Arrays.toString(ardDifference));
fin.close();
}
公共静态双差(双ardY[]{
双精度差[]=新双精度[5];
对于(int i=0;i<5;i++){
ardDifference[i]=ardY[i+1]-ardY[i];
返回差[i];
}
返回0;
}
}
因为在第一次迭代本身返回的循环中有一个返回。
我觉得这里不需要循环。或者如果需要多个差异,则将返回类型更改为double[]
并返回ardDifference
for (int i = 0; i < 5; i++) {
ardDifference[i] = ardY[i + 1] - ardY[i];
}
return ardDifference;
for(int i=0;i<5;i++){
ardDifference[i]=ardY[i+1]-ardY[i];
}
返回差;
//修改公共静态双差(双ardY[]){
公共静态双[]差(双ardY[]){
双精度差[]=新双精度[5];
对于(int i=0;i<5;i++){
ardDifference[i]=ardY[i+1]-ardY[i];
//删除该行返回差[i];
}
//修改返回0;
返回差;
}
您当前仅返回一个双精度数组,而不是整个数组如果您似乎没有返回整个数组,则应更改为
// Return type \/ is double[] instead of double
public static double[] Difference(double ardY[]) {
double ardDifference[] = new double[5];
for (int i = 0; i < 5; i++) {
ardDifference[i] = ardY[i + 1] - ardY[i];
}
return ardDifference;//Returns entire array
}
//返回类型\/是double[]而不是double
公共静态双[]差(双ardY[]){
双精度差[]=新双精度[5];
对于(int i=0;i<5;i++){
ardDifference[i]=ardY[i+1]-ardY[i];
}
return ardDifference;//返回整个数组
}
您当前只返回一个double,而不是整个数组您返回的是一个
double
,这意味着一个值。可能您希望返回一个double[]
,或者更好的是,一个列表
问题不清楚。您想在方法差异中做什么?谢谢!这真的帮了我的忙!
// Return type \/ is double[] instead of double
public static double[] Difference(double ardY[]) {
double ardDifference[] = new double[5];
for (int i = 0; i < 5; i++) {
ardDifference[i] = ardY[i + 1] - ardY[i];
}
return ardDifference;//Returns entire array
}