比如说,我有两个方法,每个方法都返回一个
IntStream
。
static IntStream getKeySizeStream() {
return IntStream.of(
128,
192,
256
);
}
static IntStream getBlockSizeStream() {
return IntStream.of(
128
);
}
我想定义一个新方法,它返回这两个流的组合流。
我发现的一种方法是这样的。
static Stream<Arguments> getKeySizeAndBlockSizeArgumentsStream() {
return getKeySizeStream().boxed().flatMap(ks -> {
return getBlockSizeStream()
.mapToObj(bs -> Arguments.of(ks, bs));
});
}
没有
.boxed().map()
部分我该怎么办?我可以这样做吗?
我找到了答案。
static Stream<Arguments> getKeySizeAndBlockSizeArgumentsStream2() {
return getKeySizeStream().mapToObj(ks -> {
return getBlockSizeStream().mapToObj(bs -> Arguments.of(ks, bs));
}).flatMap(Function.identity());
}