我有一个返回不可变列表的方法。我想向其中添加元素,这就是为什么必须将其转换为可变列表的原因。当前,我从不可变列表中创建一个新的ArrayList,如下所示:
final List<someDTO> mutableList = new ArrayList<>(someDTO.getImmutableList());
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法,例如使用一些集合复制方法,java流或类似方法?
我有一组InternetAddress recipients是我的收件人.我需要将它转换为Set.我用了
Set<String> reci = new HashSet<>();
for(InternetAddress recipient : recipients){
reci.add(recipient.toString());
}
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,是否可以避免使用循环并使用java 8 map和stream执行此操作.我尝试了以下但是没有用.
recipients.stream().map(String::new).collect(Collectors.toSet());
Run Code Online (Sandbox Code Playgroud)
这给出了错误'无法解析构造函数字符串'.