如何查找此数组的最低值和最高值(java)

如何查找此数组的最低值和最高值(java),java,Java,这是我当前的代码,无法让它工作。不会打印出正确的值。目前,打印最高值为2897,打印最低值为2897 public static void main(String[] args) { int [] salesfigures2014 = {2200,1951,2181,2888,3084,2897}; int [] salesfigures2015 = {2359,2099,2352,2952,3274,3264}; String [] salesfiguresmonth

这是我当前的代码,无法让它工作。不会打印出正确的值。目前,打印最高值为2897,打印最低值为2897

public static void main(String[] args) {

    int [] salesfigures2014 = {2200,1951,2181,2888,3084,2897};
    int [] salesfigures2015 = {2359,2099,2352,2952,3274,3264};
    String [] salesfiguresmonths = {"Jan","Feb","March","April","May","June"};  

    int Average2014 = avgsales2014(salesfigures2014);
    int Highest2014 = highmonth2014(salesfigures2014,salesfiguresmonths);
    int Lowest2014 = lowmonth2014(salesfigures2014,salesfiguresmonths);
    //int Average2015 = avgsales2015(salesfigures2015);
    //int Highest2015 = highmonth2015(salesfigures2015,salesfiguresmonths);
    //int Lowest2015 = lowmonth2015(salesfigures2015,salesfiguresmonths);
    //int AverageSales = avgmonth(salesfigures2014,salesfigures2015,salesfiguresmonths);

    System.out.println("highest sales in 2014: " + highmonth2014(salesfigures2014, salesfiguresmonths));
    System.out.println("lowest sales in 2014: " + lowmonth2014(salesfigures2015, salesfiguresmonths));


}

public static int avgsales2014(int[] salesfigures2014) {

    int i, total = 0; 
    for(i=0; i<salesfigures2014.length; i++)            
    {
        total = total + salesfigures2014[i];     

    }
    total = total/salesfigures2014.length;
    return(total);

}
static int highmonth2014(int[] salesfigures2014, String[] salesfiguresmonths) {

    int high = salesfigures2014[0];
    for (int i = 1; i < salesfigures2014.length; i++){
        if(salesfigures2014[i] > high );
        high = salesfigures2014[i];
    }
    return high;
}
static int lowmonth2014(int[] salesfigures2014, String[] salesfiguresmonths) {

    int low = salesfigures2014[0];
        for (int i = 1; i < salesfigures2014.length; i++){
            if(salesfigures2014[i] < low );
            low = salesfigures2014[i];
        }
        return low;
}
publicstaticvoidmain(字符串[]args){
int[]销售数字2014={220019512181288830842897};
int[]salesfigures2015={2359209923522952743264};
String[]salesfiguresmonths={“一月”、“二月”、“三月”、“四月”、“五月”、“六月”};
int Average 2014=avgsales2014(销售数字2014);
int Highest2014=2014年上半年(销售数字2014,销售数字每月);
int Lowest2014=2014年下半年(销售数字2014,销售数字每月);
//int Average 2015=avgsales2015(销售数字2015);
//int Highest2015=2015年上半年(销售数字2015,销售数字每月);
//int Lowest2015=2015年下半年(销售数字2015,销售数字每月);
//int AverageSales=avgmonth(销售图2014、销售图2015、销售图每月);
System.out.println(“2014年最高销售额:+2014年高月(销售数字2014,销售数字每月));
System.out.println(“2014年最低销售额:+2014年下半年(销售数字2015,销售数字每月));
}
公共静态int avgsales2014(int[]销售图2014){
int i,总计=0;
对于(i=0;i高);
high=销售数字2014[i];
}
高回报;
}
静态int lowmonth2014(int[]salesfigures2014,String[]salesfiguresmonths){
int low=销售数字2014[0];
对于(int i=1;i摆脱那些多余的(和错误的)
s


您需要删除for loops中if语句后的分号。因此,为了便于阅读,您应该缩进设置高低的行。我建议您只需使用。@Emre Sün这不符合他的逻辑!他为什么要将数组的第一个元素与数组的第一个元素进行比较???显然,两者都不会变大或变小。在本例中,他设置了
i=1
,因为他已经有了
salesfigures2014[0]
…这是一个很好的例子,说明了为什么在if语句中总是使用大括号,避免了简单的错误。