Java 8流:将IntStream转换为String
在Java 8流API中,调用chars()任何String对象都会返回一个IntStream包含所有字符的对象。
将返回的IntStream对象转换回a
的正确方法是String什么?调用toArray()会给我一个int[],任何String构造函数都不接受。
回答:
您可以使用toArray(),然后使用String(int[], int,
int)构造函数。正如chars()返回UTF-16代码单元所指定的那样,这并不完全令人满意,基本上是:
返回此序列的int零扩展char值的流。映射到代理代码点的任何字符都将通过未解释传递。
使用codePoints()反而会更加保持与此构造,其预计的代码点,而不是UTF-16代码单元。否则(带有chars),如果您的原始字符串
确实 包含代理对,则您可能会发现错误-我没有尝试过,但这是有道理的。
我不知道没有先转换为数组的简单方法。
以上是 Java 8流:将IntStream转换为String 的全部内容, 来源链接: utcz.com/qa/432056.html





![如何在Go中将[]byte转换为io.Reader](/wp-content/uploads/thumbs/266064_thumbnail.jpg)
![Go中string与[]byte高效互转的方法实例](/wp-content/uploads/thumbs/266225_thumbnail.jpg)