Java中的if与elseif

时间:2025-02-19 10:25:49

java中满足所有判断条件的3个if与if, else if, else

我们来举个例子,就是判断旋转数组中判断最小值

package work2;

import ;

public class RotationArrayMinElement {

    
    public static int getMin(int[] array) {
        if (null==array) {
            return -1;
        }else {
            return getMin(array,0,-1);
        }
    }
    
    public static int getMin(int[] array, int low, int high) {

        if (high<low) {
            return array[0];
        }
        else if (high==low) {
            return array[low];
        }
        else {
            int mid = (low+high)/2;
            if (array[mid]>array[mid+1]) {
                return array[mid+1];
            }else if (array[mid-1]>array[mid]) {
                return array[mid];
            }else if(array[high]>array[mid]) {
                return getMin(array,low,mid-1);
            }else if(array[low]>array[mid]) {
                return getMin(array,mid+1,high);
            }else {
                return (getMin(array,low,mid-1), getMin(array,mid+1,high));
            }
        }
    }

    public static void main(String [] args) {
        Scanner sc= new Scanner();
        int []array1 = {5,6,1,2,3,4};
        ((int)2.7);
        (getMin(array1));
        
    }
}

 

在getMin(int[] array, int low, int high)函数中,如果把high与low的判断改为3个if,就会报错,要求add return statement

有人能解释一下为啥吗