У меня есть коллекция допусти вида:
id - id элемента
message - сообщение
parent - родитель, может содержать 0 или id элемента
Задача найти позицию родителя чтобы получить данные, если parent > 0
Что я придумал на данный момент:
1)indexOf
Есть метод indexOf который как раз выполняет нужный мне поиск но только я не понял как применить (и вообще возможно?) indexOf в коллекции ArrayList. Конечно можно создать еще один объект ArrayList и выполнить поиск в нем и далее использовать полученный index для получения данных из главной коллекции.
2)Цикл
Перебрать всю коллекцию циклом и найти нужный индекс
эм, я правильно понимаю, что родитель лежит в той же коллекции, что и элемент, и ваша задача - найти этого родителя по parent элемента? Что мешает пробежаться по коллекции еще раз в поисках родителя? indexOf как раз именно это и делает. Ну только естественно поиск родителей для n элементов будет обладать квадратичной сложностью
Я так понимаю indexOf ищит по всем полям, а мне надо выполнить поиск только по obj id, не подскажешь как это сделать? Да, родитель находится в этой же коллекции.