проверить вложенность есть ли в секции секция, если есть достать список уроков из каждой вложенности? У меня получается такая билеберда((
public List<LessonEntity> getAllLessonsInSection(SectionEntity section) {
List<LessonEntity> lessonEntities = section.getSections().forEach(child->{
if (child.getSections().size() > section.getSections().size()){
child.getSections().stream().map(getAllLessonsInSection())
}
});
return null;
}
@javastart
спасибо)
стримы отлично комбинируются section.getSections().stream() .filter(candidate -> candidate.getSections().size() > section.getSections().size()) .flatMap(section -> section.getSections().stream()) .map(...) правда смысл операции в примере не понятен ни на йоту
class Course { final List<Course> children; final List<String> lessons; public Course(List<Course> children, List<String> lessons) { this.children = children; this.lessons = lessons; } public Course(List<String> lessons) { this(List.of(), lessons); } } public class App { static List<String> getAllLessons(Course course) { return course.children.isEmpty() ? course.lessons : Stream.concat(course.children.stream().map(App::getAllLessons).flatMap(List::stream), course.lessons.stream()) .toList(); } проверяешь для курса - если у него нет "детей", то возвращаешь его уроки, если "дети" есть - возвращаешь его уроки и уроки всех детей (через рекурсию)
Обсуждают сегодня