我想得到字节数组流,但我知道Arrays
没有获取字节数组流的方法。
byte[] byteArr = new byte[100];
Arrays.stream(byteArr);//Compile time error
我的问题,
注意:我知道我可以使用Byte[]
代替byte[]
,但这不能回答我的问题。
答案 0 :(得分:5)
只有3种类型的基本流:IntStream,LongStream和DoubleStream。
因此,最接近的是IntStream,其中数组中的每个字节都被提升为int。
AFAIK,从字节数组构建一个的最简单方法是
IntStream.Builder builder = IntStream.builder();
for (byte b : byteArray) {
builder.accept(b);
}
IntStream stream = builder.build();
编辑:assylias建议另一种更短的方式:
IntStream stream = IntStream.range(0, byteArr.length)
.map(i -> byteArray[i]);