Скажем, у меня есть массив:
int [] I = { 1, 3, 6, 3, 7,3, 9, 3};
int value = 3;
У меня есть цикл for, который отслеживает количество вхождений значения:
int counter = 0;
for(int x = 0; x < I.length; x++)
{
if(I[x] == value)
{
counter++;
}
}
Я создаю новый массив с длинойравно числу вхождений, которые могут хранить все индексы вхождений из исходного массива:
int [] index = new int [counter];
for(int x = 0; x < index.length; x++)
{
for(int i = 0; i<I.length; i++)
{
if(I[i] == value){
index[x] = i;
}
}
}
Однако, когда я печатаю свой массив индексов, я просто получаю последний индекс, напечатанный на суммуСчетчик времени равен, когда я хочу все индексы.
for(int i = 0; i<index.length; i++)
{
System.out.println(index[i]);
}
Он просто печатает "7" (последний индекс) 3 раза. Как мне исправить это, чтобы у меня был массив всех индексов? Спасибо.