167. 两数之和 II - 输入有序数组,为什么用for循环出错了

给定一个已按照 升序排列  的整数数组 numbers ,请你从数组中找出两个数满足相加之和等于目标数 target 。

函数应该以长度为 2 的整数数组的形式返回这两个数的下标值。


class Solution {
    public int[] twoSum(int[] numbers, int target) {
        
        for(int i=0;i<numbers.length;i++){
            for(int j=i;j<numbers.length;j++){
                int sum = numbers[i] + numbers[j];
                if(numbers[i]+numbers[j]==target]){
                return new int[]{i,j};
                }
            }
        }
        return new int []{-1,-1};
    }
}

img

编译报错和源码不匹配。
int sum = numbers[i] + numbers[j];

img

if(numbers[i]+numbers[j]==target]) 去掉**]**

if (sum == target后面怎么有个]