Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java程序-输出不符合预期_Java_Algorithm - Fatal编程技术网

java程序-输出不符合预期

java程序-输出不符合预期,java,algorithm,Java,Algorithm,我的程序输出有问题。应找出总降雨量、平均降雨量和降雨量最少/最多的月份。这个程序运行得很好,但是当我运行它时,它总是显示一月是最低的(如果不是),而十二月是最高的(如果不是)。我希望找出我做错了什么 public class RainFall { double[] rainArray = new double [SIZE]; public static final int SIZE = 12; RainFall() { } public RainFall(double[] r)

我的程序输出有问题。应找出总降雨量、平均降雨量和降雨量最少/最多的月份。这个程序运行得很好,但是当我运行它时,它总是显示一月是最低的(如果不是),而十二月是最高的(如果不是)。我希望找出我做错了什么

public class RainFall {
double[] rainArray = new double [SIZE]; 
public static final int SIZE = 12;



RainFall() {     
}
public RainFall(double[] r){
    rainArray = new double[SIZE];

}

public void setArrayValueAtIndex( double Val, int Index) {
    if (Index < SIZE - 1)
        return;

    rainArray[Index] = Val;
}

public double getTotal() {
    double total = 0;
    for (int i = 0; i < SIZE; i++){
        total += rainArray[i];
    }

    return total;
}

public String getMonth ( int monthIndex) {
    switch( monthIndex )
    {
        case 0 : return "January";
        case 1 : return "February";
        case 2 : return "March";
        case 3 : return "April";
        case 4 : return "May";
        case 5 : return "June";
        case 6 : return "July";
        case 7 : return "August";
        case 8 : return "Septemeber";
        case 9 : return "October";
        case 10 : return "November";
        case 11 : return "December";
        default : return "Error";
    }

}


public double getAverage(){
    return (getTotal() / SIZE);
}

public String getMost(){
    int mostRain = 0;
    for (int i = 1; i < SIZE; i++)
    {
       if (rainArray[i] > rainArray[mostRain])
           mostRain = i;
    }
    return getMonth( mostRain );

}

public double getMostValue(){
    int mostRain = 0;
    for ( int i = 1; i  < SIZE; i++) {
        if (rainArray[i] < rainArray[mostRain])
        mostRain = i; 
    }
    return rainArray[mostRain];

}

public String getLeast(){
    int leastRain = 0;
    for ( int i = 1; i < SIZE; i++ ) {
        if ( rainArray[i] < rainArray[leastRain])
            leastRain = i;
    }

    return getMonth( leastRain );

}

public double getLeastValue(){
    int leastRain = 0;
    for ( int i = 1; i < SIZE; i++) {
        if (rainArray[i] < rainArray[leastRain])
         leastRain =  i;
    }

    return rainArray[leastRain];
}
        }
公共类降雨{
double[]rainArray=新的double[SIZE];
公共静态最终整数大小=12;
降雨(){
}
公众降雨量(双[]r){
rainArray=新的双精度[尺寸];
}
public void setArrayValueAtIndex(双值,整数索引){
如果(索引<大小-1)
回来
rainArray[Index]=Val;
}
公共双getTotal(){
双倍合计=0;
对于(int i=0;irainArray[mostRain])
mostRain=i;
}
返回月(mostRain);
}
公共双getMostValue(){
int-mostRain=0;
对于(int i=1;i
这个计划有两个部分,但我确信问题就在这一部分

public-double-getMostValue(){
public double getMostValue(){
    int mostRain = 0;
    for ( int i = 1; i  < SIZE; i++) {
        if (rainArray[i] < rainArray[mostRain])
        mostRain = i; 
    }
    return rainArray[mostRain];
}
int-mostRain=0; 对于(int i=1;i

这将找到最小值。您需要将

我不明白,该方法是查找最小值,但命名为最大值

public double getMostValue(){
    int mostRain = 0;
    for ( int i = 1; i  < SIZE; i++) {
        if (rainArray[i] < rainArray[mostRain])
        mostRain = i; 
    }
    return rainArray[mostRain];

}
public-double-getMostValue(){
int-mostRain=0;
对于(int i=1;i
谢谢你的回复,我改变了主意,这对几个月的工作很有帮助。谢谢它解决了你的问题吗?是的,它解决了,非常感谢!啊,很好:)那么一定要把它作为正确答案来投票!我的答案旁边有一个空洞的小记号。