java将数组除以其元素

java将数组除以其元素,java,arrays,Java,Arrays,我想为数组的第一个元素分割数组中的元素,方法正常,但最后一个元素没有被分割 我想我必须使用 你在测试价值,而不是这里的位置。请尝试以下方法: public class Ris { public static void main() { double[] testResult = {2.0, 3.6, 5.0, 2.0}; for(int element = 1; element < testResult.length; element++){ testResult[

我想为数组的第一个元素分割数组中的元素,方法正常,但最后一个元素没有被分割

我想我必须使用 你在测试价值,而不是这里的位置。请尝试以下方法:

public class Ris
{
public static void main()
{
    double[] testResult = {2.0, 3.6, 5.0, 2.0};
    for(int element = 1; element < testResult.length; element++){
    testResult[element] = testResult[element] / testResult[0] ;// divides elements by first element 0
      System.out.println(testResult[element]); 

    }
}
}
你在测试价值,而不是这里的位置。请尝试以下方法:

public class Ris
{
public static void main()
{
    double[] testResult = {2.0, 3.6, 5.0, 2.0};
    for(int element = 1; element < testResult.length; element++){
    testResult[element] = testResult[element] / testResult[0] ;// divides elements by first element 0
      System.out.println(testResult[element]); 

    }
}
}

要排除第一个元素,应从1开始计数,而不是从0开始计数。即改为

for (int element = 1; ....

要排除第一个元素,应从1开始计数,而不是从0开始计数。即改为

for (int element = 1; ....

你以一种糟糕的方式跳过了第一个元素-

if( testResult[element] > testResult[0]){
跳过不超过第一个元素的所有内容-超过2.0

你可能需要测试一下

if( element > 0){
但您也可以跳过for cycle定义中的第一个元素

for(int element = 1; element < testResult.length; element++){

你以一种糟糕的方式跳过了第一个元素-

if( testResult[element] > testResult[0]){
跳过不超过第一个元素的所有内容-超过2.0

你可能需要测试一下

if( element > 0){
但您也可以跳过for cycle定义中的第一个元素

for(int element = 1; element < testResult.length; element++){
而不是:

if( testResult[element] > testResult[0]){//excludes 1st element
您应该使用:

if(element > 0){//excludes 1st element
排除第一个元素

或者让for循环从第1个位置开始跳过第0个位置:

for(int element = 1; element < testResult.length; element++)
而不是:

if( testResult[element] > testResult[0]){//excludes 1st element
您应该使用:

if(element > 0){//excludes 1st element
排除第一个元素

或者让for循环从第1个位置开始跳过第0个位置:

for(int element = 1; element < testResult.length; element++)

更一般地说,将所有变量都放在一个数组中是不好的做法 或者对输入和输出使用相同的变量。 你应该:

double denominator = 2.0;
double[] inputValues = new double[]{3.6, 5.0, 2.0};
double[] outputValues = new double[inputValues.length];

如果这样做,for循环现在从元素0开始,在之前结束。更一般地说,将所有变量都放在一个数组中是不好的做法 或者对输入和输出使用相同的变量。 你应该:

double denominator = 2.0;
double[] inputValues = new double[]{3.6, 5.0, 2.0};
double[] outputValues = new double[inputValues.length];
如果这样做,for循环现在从元素0开始,在元素0之前结束