我需要编写一个方法来返回Java字符串中字符的索引数组。下面的好(正确性、效率、尽可能短的代码)是否足够?
int[] charIndexArray(String s, char c) {
int start = 0;
List<Integer> list = new ArrayList<Integer>();
while ((start = s.indexOf(c, start)) != -1) {
list.add(start);
start++;
}
int arr[] = new int[list.size()];
for (int i = 0; i < ret.length; i++)
arr[i] = list.get(i);
return arr;
}