Список итераций Java внутри списка

У меня есть методsolver.calculateForDay(day, uuid) Дьяс это Enum и список uuid.

public enum DaysOfWeekEnum {
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday,
    Sunday
}
List<String> uuidList = [
    "c03b26e0-721e-3b57-9ffe-1b3709c4159e",
    "223bfb41-8d2b-3555-86ee-7aa9c73fe223",
    "d65e6239-d10d-3711-b76d-458290bcb76b",
    "854acaa6-3166-3542-8511-c46a21ce4a5b",
    "0a3e1588-ad59-3586-b071-d5001f5ff9a7",
    "e5524b9b-3aca-3b80-9aab-19bfec30fb9b",
    "1dbd3cd0-8382-3736-a9bd-f2cc78187dad",
    "63d29aeb-ab91-3d24-b40c-d69f2955a893",
    "a63ffce5-1d86-3afc-8b5a-97452f935632",
    "f62e1509-845b-3ac4-b85b-7648f675496d",
    "6ed7a21e-22a3-39a0-a83c-734e35625c67",
    "1edfbf51-36ff-34a6-9036-cfbd2ce8451e",
    "ac33181d-59bc-3b17-88fe-26fd10584bb6",
    "56e8e85d-e2e8-3419-8cfe-831acdbede84",
    "3f45f239-f137-3f7c-a45c-b0bf40b4de37",
    "b9aef79d-0397-320e-a393-db346b9496b4",
    "fd6ee25b-1768-3d81-8a22-f4410b0cce6f",
    "b349f0ea-c810-3790-bdc3-a82ed5921a28",
    "c4164cc5-1371-3ecb-a6d1-9f8d49531189"
]

Можете ли вы помочь мне реализовать цикл внутри цикла. Что у меня есть:

@Autowired
private final DaysResolver resolver;

List<Boolean> collect = Stream.of(DaysOfWeekEnum.values())
    .map(days -> resolver.calculateForDay(days, "c03b26e0-721e-3b57-9ffe-1b3709c4159e"))
    .collect(Collectors.toList());

Могу ли я динамически перебирать uuidList, потому что, как вы можете видеть, в этом примере я жестко запрограммировал uuid «c03b26e0-721e-3b57-9ffe-1b3709c4159e», и я не знаю, как это реализовать.

Ожидаемый звонок:

boolean calculateForDay(DaysOfWeekEnum type, String uuid)

resolver.calculateForDay(Monday, "c03b26e0-721e-3b57-9ffe-1b3709c4159e")  
resolver.calculateForDay(Monday, "223bfb41-8d2b-3555-86ee-7aa9c73fe223")  
resolver.calculateForDay(Monday, "d65e6239-d10d-3711-b76d-458290bcb76b")  
resolver.calculateForDay(Monday, "854acaa6-3166-3542-8511-c46a21ce4a5b")  
........
resolver.calculateForDay(Tuesday, "c03b26e0-721e-3b57-9ffe-1b3709c4159e")  
resolver.calculateForDay(Tuesday, "223bfb41-8d2b-3555-86ee-7aa9c73fe223")  
resolver.calculateForDay(Tuesday, "d65e6239-d10d-3711-b76d-458290bcb76b")  
resolver.calculateForDay(Tuesday, "854acaa6-3166-3542-8511-c46a21ce4a5b") 
........

Я получил ошибку: не существует экземпляров переменных типа R, поэтому void соответствует R

Romillion 24.06.2024 11:37

Мне непонятно, чего вы пытаетесь достичь… Вы хотите вызывать resolver.calculateForDay(…, …) для каждого uuid каждый день? Кстати, уже есть встроенное перечисление java.time.DayOfWeek, возможно, нет необходимости в специальной реализации.

deHaar 24.06.2024 11:44

И вы хотите получить список логических значений?

Tim Moore 24.06.2024 11:58

Да, мне нужно вызватьsolver.calculateForDay и посмотреть результат в логическом списке

Romillion 24.06.2024 12:01
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
4
74
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете flatMap список uuid:

List<Boolean> collect = 
    Stream.of(DaysOfWeekEnum.values())
          .flatmap(day -> uuidList.stream()
                                  .map(uuid -> resolver.calculateForDay(day, uuid))
          .collect(Collectors.toList());

Другие вопросы по теме

Похожие вопросы

Асинхронные методы выдают сообщение «Реализация JAXB-API не найдена в пути к модулю или пути к классам»
Пользовательский плагин Maven: как обрабатывать FileSet?
Почему мы используем новый оператор для доступа к вложенному статическому классу в Java?
Почему полученные сообщения не отображаются в пользовательском интерфейсе?
Плагин [id: 'kotlin-android', версия: '1.7.10'] не был найден ни в одном из следующих источников в Android Studio для Flutter
Как программно установить в Jetty 12 максимальный размер запроса?
Не удалось найти валидатор для ограничения «jakarta.validation.constraints.Pattern» — ошибка все еще появляется даже после удаления валидатора из класса
Свойство цвета строки состояния Android не применяется к действиям, выполненным из предустановки действий «Пустые представления»
Область столбца-заполнителя полосы прокрутки в стиле TableView
Невозможно получить доступ к классу Retrofit2.Response. Проверьте путь к классам вашего модуля на предмет отсутствующих или конфликтующих зависимостей