【发布时间】:2019-02-14 08:50:01
【问题描述】:
Java 中的StringBuffer/StringBuilder 类主要用于修改字符串值,而不必每次都初始化一个新的字符串对象。
是否有特定原因,它没有使用 LinkedList 而不是 Char 数组,因为它是底层数据结构?
将 char 插入 Array 将始终导致 O(n) 时间将所有元素复制到下一个索引,而在 LinkedList 的情况下在 O(1) 时间内完成。
【问题讨论】:
-
Inserting a char into a Array will always result in a O(n) time to copy all elements to the next index什么?where as that that be done in O(1) time in case of a LinkedList.是的,每个字符的开销约为 3000%。
标签: java arrays linked-list stringbuilder stringbuffer