小编Pre*_*mer的帖子

为什么Java 8 Stream接口没有min()无参数版本?

java.util.stream.Streaminterface有两个版本的sorted方法 - sorted()按自然顺序对元素进行排序sorted(Comparator).为什么min()没有将方法引入Stream接口,这会从自然顺序的角度返回最小元素?

java-8 java-stream

11
推荐指数
3
解决办法
489
查看次数

使用UTF-8字符集时,为什么链字节[]→字符串→byte []输入和输出不同?

以下测试失败.

@Test
public void testConversions() {
    final Charset charset = Charsets.UTF_8;
    final byte[] inputBytes = {37, 80, 68, 70, 45, 49, 46, 52, 13, 10, 37, -11, -28, -10, -4, 13, 10};
    final String string = new String(inputBytes, charset);
    final byte[] outputBytes = string.getBytes(charset);
    assertArrayEquals(inputBytes, outputBytes);
}
Run Code Online (Sandbox Code Playgroud)

如果使用ISO_8859_1代替UTF-8字符集,即使使用更大的inputBytes阵列,测试也会通过.由于UTF-8的"可变宽度"属性,输入和输出是否不同?

额外问题:byte[] ? String ? byte[]如果使用ISO_8859_1 ,转换将始终具有相同的输入和输出字节数组,这是否是一个真正的假设?

java utf-8 data-conversion character-encoding

1
推荐指数
1
解决办法
70
查看次数