2019独角兽企业重金招聘Python工程师标准>>>
昨天面试问道一题:StringBuffer的底层实现原理是什么?当时想想应该是字符串数组吧,心里也不是有万分把握,面试结果只能等通知了(最没戏的结果);JDK里,StringBuffer源码为如下:
public final class StringBufferextends AbstractStringBuilder
其中构造函数形式为:public StringBuffer() {super(16);}
继续跟踪到父类AbstractStringBuilder 有这么一个构造函数:AbstractStringBuilder(int capacity) {value = new char[capacity];}
就可以知道底层确实是使用字符串数组实现的了,而且初始长度为16个字符;