stringbuilder的insert方法在指定索引处插入字符序列,索引范围为0到当前长度,支持字符串及char、int、boolean等类型自动转换,越界抛stringindexoutofboundsexception。

StringBuilder 的 insert 方法用于在指定索引位置插入字符序列,索引从 0 开始,插入后原内容自动后移。
insert 方法的基本用法
调用格式为 sb.insert(index, str),其中 sb 是 StringBuilder 实例,index 是插入位置(必须 ≥ 0 且 ≤ 当前长度),str 是要插入的字符串(也支持 char、int、boolean 等其他类型,会自动转为字符串)。
- 若 index 等于当前长度,等效于追加(append)
- 若 index 为 0,则插入到最前面
- 插入后 StringBuilder 长度增加插入字符串的长度
常见插入位置示例
假设初始字符串为 "HelloWorld":
- sb.insert(5, " ") → "Hello World"(在第 6 个字符前加空格)
- sb.insert(0, "[") → "[HelloWorld"
- sb.insert(sb.length(), "]") → "HelloWorld]"
注意索引边界和异常
index 必须满足 0 ≤ index ≤ sb.length(),否则抛出 StringIndexOutOfBoundsException。
- index = -1 或大于 length() 会报错
- 空 StringBuilder(length=0)只允许 index=0
- 建议插入前用 sb.length() 检查长度,避免越界
插入非字符串类型数据
insert 支持多种参数类型,内部会调用对应 toString():
- sb.insert(2, 123) → 插入字符串 "123"
- sb.insert(0, 'X') → 插入单个字符 "X"
- sb.insert(3, true) → 插入字符串 "true"
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











