В основном, если у меня есть ArrayList<Integer>
, содержащий <0, 1, 5, 5, 4, 2>
, мне нужно создать отдельное ArrayList
из <2, 3>
для индексов.
Я понимаю, как получить индекс для первого появление наибольшего числа, но я не знаю, как получить их все одновременно.
Я изначально думал:
int highest = 0;
for (int b = 0; b < arrlst.size(); b++) {
int p = arrlst.get(b);
if (highest <= p) {
highest = p;
highestindex.add(b);
}
}
Но потом я понял, что будет автоматически добавьте первый, а также любой, который был выше текущего максимума, даже если они не были максимальными.
Затем я подумал о том, чтобы поместить highestindex.add(...)
часть вне l oop, но затем это добавит только последний индекс, а не все.