Получение ошибки компиляции «невозможно найти символ» при возврате актеров старше определенного возраста с использованиеJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Получение ошибки компиляции «невозможно найти символ» при возврате актеров старше определенного возраста с использование

Сообщение Anonymous »

Я хочу вернуть актера старше определенного возраста с помощью функции Java Stream filter, но мой код вернул сообщение об ошибке:

Код: Выделить всё

Line 63: error: cannot find symbol [in Actor.java]
.filter(actor -> actor.getAge > ageLimit)
symbol:   variable getAge
location: variable actor of type Actor
Мой код выглядит следующим образом:

Код: Выделить всё

import java.util.*;
import java.io.*;
import java.nio.*;
import java.math.*;
import java.time.chrono.IsoChronology;
import java.time.LocalDate;
import java.util.stream.Collectors;

class Actor {
String name;
LocalDate birthday;

Actor(String nameArg, LocalDate birthdayArg) {
name = nameArg;
birthday = birthdayArg;
}

public int getAge() {
return birthday
.until(IsoChronology.INSTANCE.dateNow())
.getYears();
}

public String getName() {
return name;
}

public static List createCast() {

List cast = new ArrayList();
cast.add(
new Actor(
"Fred",
IsoChronology.INSTANCE.date(1980, 6, 20)));
cast.add(
new Actor(
"0mar",
IsoChronology.INSTANCE.date(1990, 12, 10)));
return cast;
}

public void printActor() {
System.out.println(name + ", " + this.getAge()); }
}

class cast {
interface CheckPerson {
boolean test (Actor p);
}

public static void printActors (List cast) {
for (Actor p: cast) {
p.printActor();
}
}

public static List getActorsolderThan(List cast, int ageLimit) {

List result = cast.stream()  // convert list to stream
.filter(actor -> actor.getAge > ageLimit) //TODO
.collect(Collectors. toList());

return result;
}
}
Тестовый код выглядит следующим образом:

Код: Выделить всё

//Test Code:
List cast = Actor.createCast();
List castolderThan = Cast.getActorsolderThan(cast, 30);
Cast.printActors(cast);
Как именно мне следует использовать функцию фильтра, чтобы вернуть актера старше определенного возраста, отредактировав код в строке фильтра в методе getActorsolderThan?

Подробнее здесь: https://stackoverflow.com/questions/717 ... older-than
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»