由于String字符串是常量字符串,不方便进行插入和删除操作,在对字符串进行插入和删除操作时,通常使用StringBuilder和StringBuffer类。
StringBuilder和StringBuffer类都继承自AbstractStringBuilder类,有相同的属性和方法,可以向其中插入或删除字符,它们是可变字符串。两个类主要的区别是StringBuffer对方法加了同步锁或对调用的方法加了同步锁,是线程安全的,而StringBuilder是非线程安全的。下面以StringBuilder为例看可变字符串类。
StringBuffer、StringBuilder类的基本操作
串附加函数append(),将指定字符串str追加到此字符序列。如果str为null,则追加4个字符"null"。
串插入函数insert(),按顺序将String参数中的字符插入此序列中的指定位置offset处,将此位置处原来的字符向后推,此序列将增加该参数的长度。如果str为null,则追加4个字符"null"。
串删除函数delete(),删除此序列字符串中从指定的start处开始到索引end-1处的字符,如果不存在这种字符,则一直到序列尾部。如果start等于end,则不做更改。