Ich würde es spontan so machen:

import java.util.LinkedList;

public class Main {

    public static void main(String[] args) {
        //gibt zahlen aus
        System.out.println(split(15) + "");
    }

    private static LinkedList<Integer> split(int zahl)
    {
        //linked list für zahlen die GRÖSSER als eingegebene sind
        LinkedList<Integer> greater = new LinkedList<>();


        //linked list für zahlen die KLEINER als eingegebene sind
        LinkedList<Integer> less = new LinkedList<>();

        //loopt bis z.B 25
        for(int i = 0; i < 25; i++)
        {
           //wenn die eingegebene Zahl größer als i ist -> I kleiner -> i zur less linked list hinzufügen
            if(zahl > i)
            {
                less.add(i);
            }

           //wenn die eingegebene Zahl kleiner als i ist -> I größer-> i zur greaterlinked list hinzufügen
            if(zahl < i)
            {
                greater.add(i);
            }
        }

        //hier habe ich jetzt einfach mal die linkedlist mit den höheren Zahlen
         als der eingegebenen zurückgegeben.
        return greater;
    }
}

...zur Antwort
public boolean has77(int[] nums) {
  for(int i = 0; i < nums.length - 1; i++)
  {
    //das hattest du ja schon
    if(nums[i] == 7 && nums[i+1] == 7)
    {
      return true;
    }
    
      //wenn i kleiner oder gleich die anzahl der Elemente - 3 ist -> Du kannst   aufjedenfall 2 raufrechnen ohne ausserhalb der Liste zu landen
    if(i <= nums.length - 3)
    {
     // hattest du schon...
      if(nums[i] == 7 && nums[i + 2] == 7)
      {
        return true;
      }
    }
    
  }
  return false;
}

Ich hoffe, ich konnte dir weiterhelfen! :)

...zur Antwort