changed CharSequence lastIndexOf to handle supplementary characters
This commit is contained in:
parent
6597c19652
commit
cde4c52903
|
@ -124,11 +124,24 @@ static int lastIndexOf(final CharSequence cs, final int searchChar, int start) {
|
|||
if (start >= sz) {
|
||||
start = sz - 1;
|
||||
}
|
||||
if(searchChar < Character.MIN_SUPPLEMENTARY_CODE_POINT){
|
||||
for (int i = start; i >= 0; --i) {
|
||||
if (cs.charAt(i) == searchChar) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(searchChar <= Character.MAX_CODE_POINT){
|
||||
char[] chars = Character.toChars(searchChar);
|
||||
for(int i = start; i>0; --i){
|
||||
if(cs.charAt(i) == chars[1]){
|
||||
if(cs.charAt(i-1) == chars[0]){
|
||||
return i;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return NOT_FOUND;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue