code: static int indexOf(String source, String target, 
          int startIndex, boolean ignoreCase)
      {
          if (ignoreCase)
          {
              return indexOf(source, target, startIndex, IGNORING_CASE);
          }
          return indexOf(source, target, startIndex, 
              (c0, c1) -> Integer.compare(c0, c1));
      }
docs: Returns the index of the first appearance of the given target in
  the given source, starting at the given index. Returns -1 if the
  target string is not found.
  
  @param source The source string
  @param target The target string
  @param startIndex The start index
  @param ignoreCase Whether the case should be ignored
  @return The index