Создание карты из чрезвычайно вложенного массива с использованием потоков java - PullRequest
0 голосов
/ 01 февраля 2020

У меня есть этот массив JSON, через который я пытаюсь выполнить потоковую передачу, и не могу разобраться. Мне нужно создать карту, в которой ранг конференции команды в качестве ключа и название команды в качестве значения, исходя из списка записей List<Records>. Я не очень хорош в потоках или for циклы, поэтому я надеялся, что кто-то может помочь.

JSON

Records{teamRecordsList=[TeamRecords{conferenceRank='1', team=Team{name='Washington Capitals'}}, TeamRecords{conferenceRank='3', team=Team{name='Pittsburgh Penguins'}}, TeamRecords{conferenceRank='5', team=Team{name='New York Islanders'}}, TeamRecords{conferenceRank='6', team=Team{name='Columbus Blue Jackets'}}, TeamRecords{conferenceRank='9', team=Team{name='Carolina Hurricanes'}}, TeamRecords{conferenceRank='10', team=Team{name='Philadelphia Flyers'}}, TeamRecords{conferenceRank='12', team=Team{name='New York Rangers'}}, TeamRecords{conferenceRank='15', team=Team{name='New Jersey Devils'}}]}Records{teamRecordsList=[TeamRecords{conferenceRank='2', team=Team{name='Boston Bruins'}}, TeamRecords{conferenceRank='4', team=Team{name='Tampa Bay Lightning'}}, TeamRecords{conferenceRank='7', team=Team{name='Florida Panthers'}}, TeamRecords{conferenceRank='8', team=Team{name='Toronto Maple Leafs'}}, TeamRecords{conferenceRank='11', team=Team{name='Montréal Canadiens'}}, TeamRecords{conferenceRank='13', team=Team{name='Buffalo Sabres'}}, TeamRecords{conferenceRank='14', team=Team{name='Ottawa Senators'}}, TeamRecords{conferenceRank='16', team=Team{name='Detroit Red Wings'}}]}Records{teamRecordsList=[TeamRecords{conferenceRank='1', team=Team{name='St. Louis Blues'}}, TeamRecords{conferenceRank='2', team=Team{name='Colorado Avalanche'}}, TeamRecords{conferenceRank='4', team=Team{name='Dallas Stars'}}, TeamRecords{conferenceRank='9', team=Team{name='Nashville Predators'}}, TeamRecords{conferenceRank='10', team=Team{name='Chicago Blackhawks'}}, TeamRecords{conferenceRank='11', team=Team{name='Winnipeg Jets'}}, TeamRecords{conferenceRank='12', team=Team{name='Minnesota Wild'}}]}Records{teamRecordsList=[TeamRecords{conferenceRank='3', team=Team{name='Vancouver Canucks'}}, TeamRecords{conferenceRank='5', team=Team{name='Calgary Flames'}}, TeamRecords{conferenceRank='6', team=Team{name='Vegas Golden Knights'}}, TeamRecords{conferenceRank='7', team=Team{name='Edmonton Oilers'}}, TeamRecords{conferenceRank='8', team=Team{name='Arizona Coyotes'}}, TeamRecords{conferenceRank='13', team=Team{name='San Jose Sharks'}}, TeamRecords{conferenceRank='14', team=Team{name='Anaheim Ducks'}}, TeamRecords{conferenceRank='15', team=Team{name='Los Angeles Kings'}}]}

Java код


@Bean
    public CommandLineRunner run(RestTemplate restTemplate) throws Exception {
        return args -> {
            Standings standings = restTemplate.getForObject(
                    "https://statsapi.web.nhl.com/api/v1/standings", Standings.class);
            List<Records> records = standings.getRecords();
            records.stream()
                    .forEach(System.out::print);
        };

Здесь вы можете увидеть текущий код I ' я вернулась к тому, что печатает вышеупомянутый массив JSON, который я включил.

...