将数组从英寸转换为厘米

时间:2016-03-10 18:30:48

标签: java arrays

我的任务是使用一个以10开头的数组,然后以英寸为单位的用户输入高度并将其存储在数组中,然后新数组将初始数组中的所有元素转换为cm。我完全不知道该做什么,真的需要帮助。我该如何解决这个问题?

double[] heightInches = new double[10];
int currentSize = 0;
Scanner in = new Scanner(System.in);
System.out.print("Please enter heights (inches), Q to quit: ");
 while (in.hasNextDouble() && currentSize < heightInches.length)
  {  
     heightInches[currentSize] = in.nextDouble();
     currentSize++;
  }

     double[] result = convert(heightInches);

System.out.println("Heights in cm: " + result);
}

public static double[] convert(double[] inches) {

 double heightCm[] = new double[inches.length];

 for( int i = 0; i < inches.length; i++)
 {
     heightCm[i] = inches[i] * 2.54;
 }


    return heightCm;
}



}

3 个答案:

答案 0 :(得分:0)

您可以打印一个数组,因为它会打印对象地址。 你可以尝试:

for (double res:result) {
    System.out.println("Heights in cm: " + res);
}

您还可以使用Arrays.toString();

一次打印整个数组
System.out.println("Heights in cm: " + Arrays.toString(result));

答案 1 :(得分:0)

除了您的代码不完整且难以阅读之外,因为您没有花时间对其进行格式化...它几乎已经完成。

唯一的问题是

System.out.println("Heights in cm: " + result);

不会打印数组内容。它打印对数组的引用。 相反,你必须迭代(例如使用for循环)逐个打印每个数组条目。

答案 2 :(得分:0)

System.out.println(“cm in Heights:”+ Arrays.toString(result));