Метод который ищет индекс второго ненулевого элемента

Метод который ищет индекс( с нуля) второго ненулевого элемента , рядом с которым (слева или справа) находиться значение 0. Если в массиве нет двух таких элементов, вернуть -1. Например : при {1,3,7,0,5,4} возвращает 4, {5,6,0,0,0,2,2,3,0,6} возвращает 5, {0,1,2,3} возвращает -1;введите сюда описание изображения Почти получилось сделать, проблема только с тем, чтобы возвращался -1 в нужных случаях.

public static int task1(int[] arr) {
        int finder = 0;
        if (arr.length == 1){
            return -1;
        }
        else{
            for( int i = 1; i<arr.length-1;i++){
                if(arr[i]!=0 && arr[i-1]==0 ){
                    finder = i;
                }
            }
        }

        return finder;
    }

Ответы (1 шт):

Автор решения: IIIyIIIa
public static int task1(int[] arr) {
    int finder = 0;
    int count = 0;
    for (int i = 0; i < arr.length; i++) {
        if (arr[i] == 0) {
            count++;
        }
    }
    if (count <= 1) {
        return -1;
    }
    if (arr.length == 1){
        return -1;
    }
    else{
        for( int i = 1; i<arr.length-1;i++){
            if(arr[i]!=0 && arr[i-1]==0 ){
                finder = i;
            }
        }
    }

    return finder;
}
→ Ссылка