// return longest common prefix of s an an entry of set sS longestCommonPrefixOfNavigableSetAndString(S s, NavigableSet set) { if (set == null || s == null) null; S a = set.floor(s), b = set.higher(s); int n1 = lCommonPrefix(a, s), n2 = lCommonPrefix(b, s); ifdef longestCommonPrefixOfNavigableSetAndString_debug printVars_str("longestCommonPrefixOfNavigableSetAndString", +s, +set, +n1, +n2); endifdef int n = Math.max(n1, n2); ret takeFirst_string(s, n); }