public static String difference(String str1, String str2) {
        if (str1 == null) {
            return str2;
        }
        if (str2 == null) {
            return str1;
        }
        int at = indexOfDifference(str1, str2);
        if (at == INDEX_NOT_FOUND) {
            return EMPTY;
        }
        return str2.substring(at);
    }
<p>Compares two Strings, and returns the portion where they differ.
(More precisely, return the remainder of the second String,
starting from where it's different from the first.)</p>

<p>For example,
{@code difference("i am a machine", "i am a robot") -> "robot"}.</p>

<pre>
StringUtils.difference(null, null) = null
StringUtils.difference("", "") = ""
StringUtils.difference("", "abc") = "abc"
StringUtils.difference("abc", "") = ""
StringUtils.difference("abc", "abc") = ""
StringUtils.difference("ab", "abxyz") = "xyz"
StringUtils.difference("abcde", "abxyz") = "xyz"
StringUtils.difference("abcde", "xyz") = "xyz"
</pre>

@param str1  the first String, may be null
@param str2  the second String, may be null
@return the portion of str2 where it differs from str1; returns the
empty String if they are equal
@since 2.0
android/android_framework/base/src/main/java/lang3/StringUtils.java