Сай, у меня есть две ссылки на объект в LinkedList List1:Итерация Linked List в Java
LinkedList<Object> List1 = new LinkedList<Object>();
Object first;
Object last;
Я не хочу использовать индекс списка этих объектов ссылаться на них, потому что длина моего списка изменяется. Я думаю, что это не сработает. Теперь я хочу выполнить итерацию через подсписку, определенную как первым, так и последним, где сначала определяет начало подсписного списка в List1 и последний определяет конец подписок в List1.
Моя проблема сейчас в том, что AFAIK я не могу сделать что-то вроде
while (current != last){
// do something
current = someiterator.next();
}
потому, что я сравниваю два объекта, которые в общей точке воли в разных местах. Кроме того, я также не могу сравнивать ссылки по их значению, потому что список может иметь одно значение, появляющееся несколько раз. Итак, как я могу повторить этот подсписок List1?
ОК, но так как первые и последние действительно являются объектами (без примитивных типов), list1.indexOf (first) должен возвращать «первый» объект, которому я его присвоил (каким-то другим способом). Будет ли он определенно возвращать «правильный» «первый» объект? – ptikobj 2010-12-16 15:24:42
не уверен, что я понимаю ваш комментарий. – aioobe 2010-12-16 15:27:45
вещь есть, indexOf (someobject) возвращает _first_ появление какого-либо объекта в List1. Однако в моем случае может быть несколько объектов с одинаковым значением. Поскольку я новичок в Java, мой вопрос скорее: действительно ли Java обрабатывает те объекты с тем же значением, что и разные объекты? – ptikobj 2010-12-16 15:32:46