public class ListItem {
final int number;
ListItem next;
public static ListItem evenElements(ListItem ls) {
ListItem l = ls.duplicate();
if(ls == null){
return null;
}
else{
for(int i = 0; i < ls.length(); i++){
if(ls.number % 2 == 0){
l = ls;
ls = ls.next;
}
else{
ls = ls.next;
}
}
return l;
}
}
Когда я запускаю этот код списка элементов: [3,2,6,9]
, он возвращает [2,6,9]
, когда он должен возвращать только [2,6]
. Дублирующий метод дублирует ListItem, а метод length определяет длину списка. Как я могу исправить эту проблему?Как найти четные элементы в списке элементов?
Почему вы дублирующий первоначальный список? Вы хотите инициализировать пустой список, а затем добавить к нему четные числа и вернуть этот список. – dursk
Я пробовал инициировать пустой список, и та же проблема возникает – user4259498
Вы имеете дело с ** LinkedList **? –