У меня есть ArrayList, который содержит повторяющиеся значения в diff diff index.например, {"Indian","American","Chinese","Australian","Indian","Russian","Indian"}
как вы можете видеть значение - "Indian"
существует в индексе - 0
, 4
& 6
.
Мне нужно знать все эти индексы, где существует "Indian"
исоздать arrayList этого.Вот мой код:
public void filter(){
categoryArray = Arrays.asList(category);
for(String k : category){
//Log.v("filter", filterTerm);
if(k.equals(filterTerm.toLowerCase()))
{
int p = categoryArray.indexOf(k);
Log.v("index of categArr", ""+p);
String id = Integer.toString(p);
indexes.add(id);
}// end of if
}// end of for
Здесь я получаю, сколько раз повторяется, получая размер индексов (ArrayList), но когда я проверяю значения.Это одно значение на весь индекс, поскольку в методе: indexOf()
он всегда возвращает индекс первого значения, которое он находит в массиве.
Так что, если в индексе существует дубликат - 2
, 5
,7
Я получаю размер массива индекса как 3
.Но значения {2,2,2,};