gpt4 book ai didi

java - java中将字符插入字符串的最快方法是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:30:56 27 4
gpt4 key购买 nike

我正在编写一个例程,它接受一个字符串并将其格式化为带引号的可打印格式。而且它必须尽可能快。我的第一次尝试将字符从一个字符串缓冲区复制到另一个编码并沿途换行。然后我认为只修改原始的 stringbuffer 可能会更快,而不是复制所有大部分相同的数据。事实证明,插入比复制更糟糕,第二个版本(使用字符串缓冲区插入)慢了 8 倍,这是有道理的,因为它必须移动大量内存。

我所希望的是某种间隙缓冲区数据结构,这样插入就不会涉及物理移动字符串缓冲区其余部分中的所有字符。

关于每隔一段时间插入字符的字符串的最快方法有什么建议吗?

使用标准 mimeutils 库的建议没有帮助,因为我也在对字符串进行点转义,以便它可以一次性转储到 smtp 服务器。

最佳答案

最后,您的间隙数据结构必须转换为字符串,这需要通过将所有 block 附加到 StringBuilder 来将它们组装到一个数组中。

所以直接使用StringBuilder会更快。我不认为你会找到比这更快的技术。确保使用足够大的大小初始化 StringBuilder,以避免在容量耗尽后复制整个缓冲区。

关于java - java中将字符插入字符串的最快方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11413795/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com