public static int indexOf(CharSequence seq, CharSequence searchSeq) {
        if (seq == null || searchSeq == null) {
            return INDEX_NOT_FOUND;
        }
        return CharSequenceUtils.indexOf(seq, searchSeq, 0);
    }
<p>Finds the first index within a CharSequence, handling {@code null}.
This method uses {@link String#indexOf(String, int)} if possible.</p>

<p>A {@code null} CharSequence will return {@code -1}.</p>

<pre>
StringUtils.indexOf(null, *)          = -1
StringUtils.indexOf(*, null)          = -1
StringUtils.indexOf("", "")           = 0
StringUtils.indexOf("", *)            = -1 (except when * = "")
StringUtils.indexOf("aabaabaa", "a")  = 0
StringUtils.indexOf("aabaabaa", "b")  = 2
StringUtils.indexOf("aabaabaa", "ab") = 1
StringUtils.indexOf("aabaabaa", "")   = 0
</pre>

@param seq  the CharSequence to check, may be null
@param searchSeq  the CharSequence to find, may be null
@return the first index of the search CharSequence,
 -1 if no match or {@code null} string input
@since 2.0
@since 3.0 Changed signature from indexOf(String, String) to indexOf(CharSequence, CharSequence)
android/android_framework/base/src/main/java/lang3/StringUtils.java