假设我有一个Iterator<Class1>对象. Class1提供了一个stringFunction()返回a 的方法String.
有没有办法以String.join一种方式调用迭代器返回的stringFunction()每一个Class1,并连接由分隔符分隔的函数结果?
有一个String.join过载,需要一个Iterable<CharSequence>; 是否可以从Iterator<Class1>和创建一个stringFunction,以便join可以使用它?
如何使用
streamOfCharSequence.collect(Collectors.joining(delimiter)) 而不是String.join(delimiter, Iterable<CharSequence>.
你可以尝试类似的东西
String result = StreamSupport
.stream(Spliterators.spliteratorUnknownSize(iterator,
Spliterator.ORDERED), false)
.map(e -> e.stringFunction()).collect(Collectors.joining(", "));
Run Code Online (Sandbox Code Playgroud)