Преобразование набора InternetAddress в набор String - PullRequest
0 голосов
/ 30 ноября 2018

У меня есть набор InternetAddress recipients, которые являются моими получателями.Мне нужно преобразовать его в набор.Я использовал

Set<String> reci = new HashSet<>();
for(InternetAddress recipient : recipients){
    reci.add(recipient.toString());
}

, который прекрасно работает, возможно ли избежать использования цикла и сделать это с картой Java 8 и потоком.Я попробовал следующее, но это не сработало.

recipients.stream().map(String::new).collect(Collectors.toSet());

Это выдает ошибку 'Не удается разрешить конструктор String'.

1 Ответ

0 голосов
/ 30 ноября 2018

.map(String::new) означает element -> new String(element), а конструктор String с InternetAdress не существует

Вам необходимо

recipients.stream().map(InternetAddress::toString).collect(Collectors.toSet());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...