Подтвердить что ты не робот

Список потоков в набор

Я ищу рефакторинг, как я использовал поток в некоторых моих кодах. Первый пример - это то, как я это сделал. Второй пример - это то, что я пытаюсь сделать так.

Set<String> results = new HashSet<String>();

someDao.findByType(type)
            .stream()
            .forEach(t-> result.add(t.getSomeMethodValue()) );

Может ли это выглядеть примерно так? Если да, то как это сделать?

Set<String> results = someDao.findByType(type)
            .stream()
            .collect(  /*  ?? no sure what to put here  */ );
4b9b3361

Ответ 1

Используйте Collectors.toSet:

Set<String> results = someDao.findByType(type)
        .stream()
        .map(ClassName::getValue)
        .collect(Collectors.toSet());