computeHighestMonth(monthlySales)
此方法接收月销售数组作为参数。此方法将搜索并比较每月销售数组的值以获得最高值。该方法将返回具有最高值的月份的索引(或数组中的位置)。
我拥有它以便显示最高销量,但我无法弄清楚如何包含月份名称。
public static double computeHighestMonth(double[] monthlySales)
{
double highestSales = 0;
for (int index = 0; index < monthlySales.length; index++)
{
if (monthlySales[index] > highestSales)
highestSales = monthlySales[index];
}
return highestSales;
}
答案 0 :(得分:0)
您不仅应该保留最高销售额,还应该保存存储它的索引值。这意味着你应该声明一个应该每次更新的整数
monthlySales[index] > highestSales
是真的。这样你就可以保留哪个是“月号”,之后你应该转换成你需要的字符串。
希望这有帮助!
答案 1 :(得分:0)
您还需要保存索引:
public static double computeHighestMonth(double[] monthlySales)
{
double highestSales = 0;
int month = 0;
for (int index = 0; index < monthlySales.length; index++)
{
if (monthlySales[index] > highestSales){
highestSales = monthlySales[index];
month = index + 1;
}
}
System.out.print("The salary was highest on: ");
switch(month){
case 1: System.out.println("January");
case 2: System.out.println("February");
etc.
}
return highestSales;
}
答案 2 :(得分:0)
只需返回highestSales
,您只需返回此值的索引,然后使用此索引即可提供月份和最高值:
public static int computeHighestMonth(double[] monthlySales) {
double highestIndex = 0;
for (int index = 0; index < monthlySales.length; index++) {
if (monthlySales[index] > monthlySales[highestIndex])
highestIndex = index;
}
return highestIndex;
}
然后使用返回的值来获取月份及其值,如下所示:
highestIndex = computeHighestMonth(monthlySales);
System.out.println("the highest value is: "+monthlySales[highestIndex]+" of the month "+highestIndex+1);
答案 3 :(得分:0)
如果您的monthlySales
数组是List<Double>
,会更容易,因为您可以使用
List<Double> monthlySales = ...;
Double highestSales = Collections.max(monthlySales);
答案 4 :(得分:0)
这将为您提供String
月份,即1月,2月等。根据您的要求而不是您返回double
,您可以返回键值对或{{1}例如String
month + " had the highest sales " + highestSales