力扣11题的垃圾题,用的是Java解决的问题,但是出现问题运行不了看看

public class Solution {
    public int  maxArea(int[] height) {
        int max = 0;/*专门装每个数组的最大值存入一个最大值数组中*/
        int[] Max = new int[4];/*用于存储每组中最大的面积*/
        for(int i = 0;i<=height.length;i++){
            int[] arraylist = new int[4];
            for(int j = i+1;j<=height.length;j++){
                int a = height[i];
                int b = height[j];
                if (a <= b) {
                    arraylist[i]=a*(j-i);//现在将第一组的面积存在arraylist中,将要求其中的最大值存在每组最大值的数组中
                }
                //现在开始求每组的最大值
                if(max<=arraylist[i]){
                    max = arraylist[i] ;
                }
                Max[i] = max;

            }

        }
        max = Max[0];
        for(int z = 0;z<= Max.length;z++){
            if(max<=Max[z]){
                max = Max[z];
            }
        }
        return max;
    }

}



img

img

代码是如图所示,第一张照片是题目,第二张照片是报错的,本来编译的时候都没显示错误的地方,结果运行不了奇奇怪怪的。

数组下标越界,数组下标是从0开始,如果数组里面有3个元素,数组下标就是0-2。