简单地说,下面的代码产生了一个五行的流,我需要将这些行连接成一行(在流式传输时)以供进一步使用和收集它们之前。代码即将将字符串转换为一个长二进制字符串
Stream<String> binText = "hello".chars()
.mapToObj(x-> Integer.toBinaryString(x))
.map(x-> String.format("%8s", x).replaceAll(" ", "0"));
我对“Stream API”这个术语有点陌生,所以任何建议都将不胜感激。
更新:假设我想将上述代码中的流映射到int []
of 中0
,1
实际上,我尝试了下面的代码,它工作正常,但似乎效率不高,需要规范化
int [] binText = "hello".chars()
.mapToObj(x-> Integer.toBinaryString(x))
.map(x-> String.format("%8s", x).replaceAll(" ", "0"))
.flatMap(s-> Stream.of(s.split("")))
.mapToInt(Integer::parseInt)
.toArray();
不是吗?