Не уверен, имеет ли смысл смысл. но я в настоящее время застреваю, пытаясь получить последнее вхождение объекта в список. Предположим, что объект скомпрометирован по возрасту (целые числа) и именам (строкам). Я пытаюсь получить последнее вхождение возраста «18» в списке и получить имя. Как я могу это сделать?Java - Получение последнего вхождения объекта в список только с частичными данными
Текущий блок кода я работаю (К сожалению, пришлось поливать его вниз много):
private List<Callable<Void>> createTasks(ArrayList<NamesAndAges> namesAndAges) {
List<Callable<Void>> tasks = new ArrayList<Callable<Void>>();
int endOfIndex = 0, beginningOfIndex = 0;
for (NamesAndAges nameAndAge : namesAndAges)
{
if (endOfIndex >= minSize && endOfIndex == namesAndAges.lastIndexOf(???))
{
tasks.add(new addIntoDB(namesAndAges.subList(beginningOfIndex, endOfIndex)));
beginningofIndex = endOfIndex+1;
}
endOfIndex++;
}
return tasks;
}
Я в основном застрял на том, где ??? находятся в коде. Я думал, что смогу использовать его, используя lastIndexOf().
Это не вопрос о Java, а вопрос о том, как написать программу, не так ли? Можете ли вы показать нам, что вы пробовали? – scottb
Обратный список объектов, а затем пересечь список, используя для цикла, 'break' из' for loop' при первом появлении 'age = 18'. Если вы предоставите некоторый код, я могу дать лучшее решение. –
@scottb О, я думал, что это один лайнер. Я смотрел на lastIndexOf(), чтобы узнать, есть ли способ сделать это, используя это. Если это длиннее, чем одна-две строки, то, я думаю, мне нужно написать целую новую функцию или класс, чтобы разобраться. Виноват. –