[IL71] Add indices to toCodePointArray.

This is necessary for tests

Bug: 8636060
Change-Id: I50ea401a22e4df72333eda61ca39aa180966ee4b
main
Jean Chalard 2014-01-10 20:33:31 +09:00
parent a91dfff5e5
commit 18638d30c0
1 changed files with 8 additions and 2 deletions

View File

@ -171,13 +171,19 @@ public final class StringUtils {
private static final int[] EMPTY_CODEPOINTS = {};
public static int[] toCodePointArray(final String string) {
return toCodePointArray(string, 0, string.length());
}
public static int[] toCodePointArray(final String string,
final int startIndex, final int endIndex) {
final int length = string.length();
if (length <= 0) {
return EMPTY_CODEPOINTS;
}
final int[] codePoints = new int[string.codePointCount(0, length)];
final int[] codePoints = new int[string.codePointCount(startIndex, endIndex)];
int destIndex = 0;
for (int index = 0; index < length; index = string.offsetByCodePoints(index, 1)) {
for (int index = startIndex; index < endIndex;
index = string.offsetByCodePoints(index, 1)) {
codePoints[destIndex] = string.codePointAt(index);
destIndex++;
}