public final class StringBuilder extends Object implements Serializable, CharSequence
StringBuffer的API,但不保证同步。
此类设计用作简易替换为StringBuffer在正在使用由单个线程字符串缓冲区的地方(如通常是这种情况)。
在可能的情况下,建议使用这个类别优先于StringBuffer ,因为它在大多数实现中将更快。
StringBuilder的主要StringBuilder是append和insert方法,它们是重载的,以便接受任何类型的数据。 每个都有效地将给定的数据转换为字符串,然后将该字符串的字符附加或插入字符串构建器。 append方法始终在构建器的末尾添加这些字符; insert方法将insert添加到指定点。
例如,如果z引用当前内容为“ start ”的字符串构建器对象,那么方法调用z.append("le")将导致字符串构建器包含“ startle ”,而z.insert(4, "le")会将字符串构建器更改为包含“ starlet ”。
一般情况下,如果某人是指的一个实例StringBuilder ,则sb.append(x)具有相同的效果sb.insert(sb.length(), x) 。
每个字符串构建器都有一个容量。 只要字符串构建器中包含的字符序列的长度不超过容量,则不需要分配新的内部缓冲区。 如果内部缓冲区溢出,则会自动变大。
StringBuilder的StringBuilder不能安全使用多线程。 如果需要同步, 那么建议使用StringBuffer 。
除非另有说明,否则将null参数传递给null中的构造函数或方法将导致抛出NullPointerException 。
StringBuffer , String , Serialized Form
| Constructor and Description |
|---|
StringBuilder()
构造一个没有字符的字符串构建器,初始容量为16个字符。
|
StringBuilder(CharSequence seq)
构造一个包含与指定的相同字符的字符串构建器
CharSequence 。
|
StringBuilder(int capacity)
构造一个没有字符的字符串构建器,由
capacity参数指定的初始容量。
|
StringBuilder(String str)
构造一个初始化为指定字符串内容的字符串构建器。
|
| Modifier and Type | Method and Description |
|---|---|
StringBuilder |
append(boolean b)
将
boolean参数的字符串表示附加到序列中。
|
StringBuilder |
append(char c)
将
char参数的字符串表示附加到此序列。
|
StringBuilder |
append(char[] str)
将
char数组参数的字符串表示追加到此序列。
|
StringBuilder |
append(char[] str, int offset, int len)
将
char数组参数的子阵列的字符串表示附加到此序列。
|
StringBuilder |
append(CharSequence s)
将指定的字符序列追加到此
Appendable 。
|
StringBuilder |
append(CharSequence s, int start, int end)
追加指定的序列
CharSequence的序列。
|
StringBuilder |
append(double d)
将
double参数的字符串表示法附加到此序列。
|
StringBuilder |
append(float f)
将
float参数的字符串表示附加到此序列。
|
StringBuilder |
append(int i)
将
int参数的字符串表示法附加到此序列。
|
StringBuilder |
append(long lng)
将
long参数的字符串表示法附加到此序列。
|
StringBuilder |
append(Object obj)
追加
Object参数的字符串
Object形式。
|
StringBuilder |
append(String str)
将指定的字符串附加到此字符序列。
|
StringBuilder |
append(StringBuffer sb)
将指定
StringBuffer这个序列。
|
StringBuilder |
appendCodePoint(int codePoint)
将
codePoint参数的字符串表示附加到此序列。
|
int |
capacity()
返回当前容量。
|
char |
charAt(int index)
返回
char在指定索引在这个序列值。
|
int |
codePointAt(int index)
返回指定索引处的字符(Unicode代码点)。
|
int |
codePointBefore(int index)
返回指定索引之前的字符(Unicode代码点)。
|
int |
codePointCount(int beginIndex, int endIndex)
返回此序列指定文本范围内的Unicode代码点数。
|
StringBuilder |
delete(int start, int end)
删除此序列的子字符串中的字符。
|
StringBuilder |
deleteCharAt(int index)
删除
char在这个序列中的指定位置。
|
void |
ensureCapacity(int minimumCapacity)
确保容量至少等于规定的最小值。
|
void |
getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
字符从该序列复制到目标字符数组
dst 。
|
int |
indexOf(String str)
返回指定子字符串第一次出现的字符串内的索引。
|
int |
indexOf(String str, int fromIndex)
返回指定子串的第一次出现的字符串中的索引,从指定的索引开始。
|
StringBuilder |
insert(int offset, boolean b)
将
boolean参数的字符串表示插入到此序列中。
|
StringBuilder |
insert(int offset, char c)
在此序列中插入
char参数的字符串表示形式。
|
StringBuilder |
insert(int offset, char[] str)
在此序列中插入
char数组参数的字符串表示形式。
|
StringBuilder |
insert(int index, char[] str, int offset, int len)
在此序列中插入
str数组参数的子阵列的字符串表示形式。
|
StringBuilder |
insert(int dstOffset, CharSequence s)
将指定的
CharSequence这个序列。
|
StringBuilder |
insert(int dstOffset, CharSequence s, int start, int end)
将指定的CharSequence的子
CharSequence插入到此序列中。
|
StringBuilder |
insert(int offset, double d)
在此序列中插入
double参数的字符串表示形式。
|
StringBuilder |
insert(int offset, float f)
在此序列中插入
float参数的字符串表示形式。
|
StringBuilder |
insert(int offset, int i)
将第二个
int参数的字符串表示插入到此序列中。
|
StringBuilder |
insert(int offset, long l)
在此序列中插入
long参数的字符串表示形式。
|
StringBuilder |
insert(int offset, Object obj)
将
Object参数的字符串表示插入到此字符序列中。
|
StringBuilder |
insert(int offset, String str)
将字符串插入到此字符序列中。
|
int |
lastIndexOf(String str)
返回指定子字符串最右边出现的字符串内的索引。
|
int |
lastIndexOf(String str, int fromIndex)
返回指定子字符串最后一次出现的字符串中的索引。
|
int |
length()
返回长度(字符数)。
|
int |
offsetByCodePoints(int index, int codePointOffset)
返回此序列中与
index由
codePointOffset代码点偏移的索引。
|
StringBuilder |
replace(int start, int end, String str)
用指定的String中的字符替换此序列的子字符串中的
String 。
|
StringBuilder |
reverse()
导致该字符序列被序列的相反代替。
|
void |
setCharAt(int index, char ch)
指定索引处的字符设置为
ch 。
|
void |
setLength(int newLength)
设置字符序列的长度。
|
CharSequence |
subSequence(int start, int end)
返回一个新的字符序列,该序列是该序列的子序列。
|
String |
substring(int start)
返回一个新的
String ,其中包含此字符序列中当前包含的字符的子序列。
|
String |
substring(int start, int end)
返回一个新的
String ,其中包含此序列中当前包含的字符的子序列。
|
String |
toString()
返回表示此顺序中的数据的字符串。
|
void |
trimToSize()
尝试减少用于字符序列的存储。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcharAt, chars, codePoints, length, subSequencepublic StringBuilder()
public StringBuilder(int capacity)
capacity参数指定的初始容量。
capacity - 初始容量。
NegativeArraySizeException - 如果
capacity参数小于
0 。
public StringBuilder(String str)
16加上字符串参数的长度。
str - 缓冲区的初始内容。
public StringBuilder(CharSequence seq)
CharSequence 。
字符串构建器的初始容量为16加上CharSequence参数的长度。
seq - 要复制的顺序。
public StringBuilder append(Object obj)
Object参数的字符串表示。
总的效果是完全一样如果参数是由该方法转换成一个字符串String.valueOf(Object) ,而字符串的字符然后appended到此字符序列。
obj - 一个
Object 。
public StringBuilder append(String str)
附加String参数的字符,以便String参数的长度增加此序列的长度。 如果str是null ,则附加四个字符"null" 。
令n是在执行append方法之前的这个字符序列的长度。 那么如果k小于n ,则新字符序列中索引k处的字符等于旧字符序列中索引k处的字符; 否则,它等于参数str中的索引kn处的str 。
str - 一个字符串。
public StringBuilder append(StringBuffer sb)
StringBuffer这个序列。
StringBuffer参数的StringBuffer按顺序附加到此序列中,将该序列的长度增加到参数的长度。 如果sb是null ,那么四个字符"null"附加到该序列。
在执行append方法之前,让n为该字符序列的长度。 那么如果k小于n ,则新字符序列中索引k处的字符等于旧字符序列中索引k处的字符; 否则,它等于参数sb中的索引kn处的sb 。
sb - 附加的
StringBuffer 。
public StringBuilder append(CharSequence s)
Appendable复制
根据哪个类实现字符序列csq ,整个序列可能不被附加。 例如,如果csq是CharBuffer,则附加的子序列由缓冲区的位置和限制来定义。
append在界面
Appendable
s - 要追加的字符序列。
如果csq是null ,那么四个字符"null"附加到该附录。
public StringBuilder append(CharSequence s, int start, int end)
CharSequence这个序列。
从索引start开始的参数s按顺序附加到该序列的内容,直到(独占)索引end 。 此序列的长度增加的值end - start 。
令n是在执行append方法之前这个字符序列的长度。 那么如果k小于n ,则该字符序列中的索引k处的字符变得等于该序列中索引k处的字符; 否则,它等于参数s中索引k + start-n处的s 。
如果s是null ,那么这个方法会附加字符,就像s参数是一个包含四个字符"null"的序列"null" 。
append在界面
Appendable
s - 要追加的顺序。
start - 要追加的子序列的起始索引。
end - 要附加的子序列的结束索引。
IndexOutOfBoundsException - 如果
start为负数,或
start大于
end或
end大于
s.length()
public StringBuilder append(char[] str)
char数组参数的字符串表示附加到此序列。
数组参数的字符按顺序附加到此序列的内容。 该序列的长度增加参数的长度。
总的效果是完全一样如果参数是由该方法转换成一个字符串String.valueOf(char[]) ,而字符串的字符然后appended到此字符序列。
str - 要附加的字符。
public StringBuilder append(char[] str, int offset, int len)
char数组参数的子阵列的字符串表示附加到此序列。
从索引offset开始的char数组str按顺序附加到该序列的内容。 此序列的长度由的值增加len 。
总的效果是完全一样的参数是由该方法转换成一个字符串String.valueOf(char[],int,int) ,而字符串的字符然后appended到此字符序列。
str - 要附加的字符。
offset -第一的指数
char追加。
len - 要追加的
char的数量。
IndexOutOfBoundsException - 如果
offset < 0或
len < 0或
offset+len > str.length
public StringBuilder append(boolean b)
boolean参数的字符串表示法附加到序列中。
总的效果是完全一样如果参数是由该方法转换成一个字符串String.valueOf(boolean) ,而字符串的字符然后appended到此字符序列。
b - a
boolean 。
public StringBuilder append(char c)
char参数的字符串表示附加到此序列。
该参数附加到此序列的内容。 该序列的长度增加1 。
总的效果是完全一样如果参数是由该方法转换成一个字符串String.valueOf(char) ,并在该字符串的字符然后appended到此字符序列。
append在界面
Appendable
c - a
char 。
public StringBuilder append(int i)
int参数的字符串表示法附加到此序列。
总的效果是完全一样如果参数是由该方法转换成一个字符串String.valueOf(int) ,而字符串的字符然后appended到此字符序列。
i - an
int 。
public StringBuilder append(long lng)
long参数的字符串表示法附加到此序列。
总的效果是完全一样如果参数是由该方法转换成一个字符串String.valueOf(long) ,而字符串的字符然后appended到此字符序列。
lng - a
long 。
public StringBuilder append(float f)
float参数的字符串表示法附加到此序列。
总的效果是完全一样如果参数是由该方法转换成一个字符串String.valueOf(float) ,而字符串的字符然后appended到此字符序列。
f - a
float 。
public StringBuilder append(double d)
double参数的字符串表示法附加到此序列。
总的效果是完全一样如果参数是由该方法转换成一个字符串String.valueOf(double) ,而字符串的字符然后appended到此字符序列。
d - a
double 。
public StringBuilder appendCodePoint(int codePoint)
codePoint参数的字符串表示法附加到此序列。
该参数附加到此序列的内容。 该序列的长度增加Character.charCount(codePoint) 。
总的效果是完全一样如果参数被转换为char由该方法阵列Character.toChars(int)和阵列中的字符然后appended到此字符序列。
codePoint - 一个Unicode代码点
public StringBuilder delete(int start, int end)
start并延伸到字符索引end - 1 ,或如果没有这样的字符存在的序列的结束。
如果start等于end ,则不作任何更改。
start - 开头索引(含)。
end - 结束索引,独家。
StringIndexOutOfBoundsException - 如果
start为负,大于
length()或大于
end 。
public StringBuilder deleteCharAt(int index)
char在这个序列中的指定位置。
这个序列缩短了一个char 。
注意:如果给定索引处的字符是补充字符,则此方法不会删除整个字符。 如果需要的准确处理增补字符,确定数量char通过调用删除Character.charCount(thisSequence.codePointAt(index)) ,其中thisSequence是此序列。
index - 要删除的索引
char
StringIndexOutOfBoundsException - 如果
index为负数或大于或等于
length() 。
public StringBuilder replace(int start, int end, String str)
String 。
子串开始于指定start并延伸到字符索引end - 1 ,或如果没有这样的字符存在的序列的结束。
第一子串中的字符被去除,然后指定String被插入在start 。
(如果需要,此序列将被延长以容纳指定的字符串。)
start - 开始索引(含)。
end - 结尾索引,独家。
str - 将替换以前内容的字符串。
StringIndexOutOfBoundsException - 如果
start为负,大于
length()或大于
end 。
public StringBuilder insert(int index, char[] str, int offset, int len)
str数组参数的子阵列的字符串表示形式。
子阵列从指定的offset offset ,扩展为len char 。
子阵列的字符在index的位置被插入到该序列中。
该序列的长度增加len char s。
index - 插入子阵列的位置。
str - A
char数组。
offset - 要插入的子阵列中第一个
char的索引。
len - 要插入的子阵列中的数字
char 。
StringIndexOutOfBoundsException - 如果
index为负数或大于
length() ,或
offset或
len为负数,或
(offset+len)大于
str.length 。
public StringBuilder insert(int offset, Object obj)
Object参数的字符串表示插入到此字符序列中。
整体效果就好像第二个参数通过方法String.valueOf(Object)转换为一个字符串,并且该字符串的字符然后是inserted到指定的偏移量的这个字符序列。
offset参数必须大于或等于0 ,小于或等于此序列的length 。
offset - 偏移。
obj - 一个
Object 。
StringIndexOutOfBoundsException - 如果偏移量无效。
public StringBuilder insert(int offset, String str)
String参数的String按顺序插入到指定偏移量的该序列中,向上移动原始位于该位置的任何字符,并将该序列的长度增加到参数的长度。 如果str是null ,则四个字符"null"被插入到该序列中。
新字符序列中索引k处的字符等于:
offset ,则在旧字符序列中的索引k处的offset -offset的str ,如果k不小于offset但小于offset+str.length() -str.length()处的字符,如果k不小于offset+str.length() offset参数必须大于或等于0 ,小于或等于该序列的length 。
offset - 偏移量。
str - 一个字符串。
StringIndexOutOfBoundsException - 如果偏移量无效。
public StringBuilder insert(int offset, char[] str)
char数组参数的字符串表示形式。
数组参数的字符在offset的位置插入到该序列的内容中。 该序列的长度增加参数的长度。
整体效果就好像第二个参数通过方法String.valueOf(char[])转换为一个字符串,并且该字符串的字符然后是inserted到指定的偏移量的这个字符序列。
offset参数必须大于或等于0 ,并且小于或等于此序列的length 。
offset - 偏移量。
str - 一个字符数组。
StringIndexOutOfBoundsException - 如果偏移量无效。
public StringBuilder insert(int dstOffset, CharSequence s)
CharSequence插入到此序列中。
CharSequence参数的CharSequence按顺序插入到指定偏移量的该序列中,向上移动原始位于该位置的任何字符,并将该序列的长度增加到参数s的长度。
该方法的结果与调用此对象的insert (dstOffset,s,0,s.length())方法完全相同。
如果s是null ,则四个字符"null"被插入到这个序列中。
dstOffset - 偏移。
s - 要插入的序列
IndexOutOfBoundsException - 如果偏移量无效。
public StringBuilder insert(int dstOffset, CharSequence s, int start, int end)
CharSequence这个序列。
由start和end的参数s的顺序按顺序插入到指定目的地偏移量的该序列中,向上移动原始位于该位置的任何字符。 该序列的长度增加了end - start 。
该序列中索引k处的字符等于:
dstOffset ,则该序列中索引k处的dstOffset +start-dstOffset处的s ,如果k大于或等于dstOffset但小于dstOffset+end-start -(end-start) ,如果k大于或等于dstOffset+end-start dstOffset参数必须大于或等于0 ,小于或等于该序列的length 。
起始参数必须是非负数,不得大于end 。
结束参数必须大于或等于start ,小于或等于s的长度。
如果s是null ,则该方法插入字符,就像s参数是包含四个字符"null"的序列"null" 。
dstOffset - 此序列中的偏移量。
s - 要插入的序列。
start - 插入
start的起始索引。
end - 要插入的子序列的结束索引。
IndexOutOfBoundsException - 如果
dstOffset为负数或大于
this.length() ,或
start或
end为负数,或
start大于
end或
end大于
s.length()
public StringBuilder insert(int offset, boolean b)
boolean参数的字符串表示形式。
总体效果就好像第二个参数通过方法String.valueOf(boolean)转换为一个字符串,并且该字符串的字符然后是inserted到指定的偏移量的这个字符序列。
offset参数必须大于或等于0 ,小于或等于该序列的length 。
offset - 偏移。
b - a
boolean 。
StringIndexOutOfBoundsException - 如果偏移量无效。
public StringBuilder insert(int offset, char c)
char参数的字符串表示形式。
总体效果就好像第二个参数通过方法String.valueOf(char)转换为一个字符串,并且该字符串中的字符然后是inserted到指定的偏移量的这个字符序列。
offset参数必须大于或等于0 ,并且小于或等于此序列的length 。
offset - 偏移量。
c - a
char 。
IndexOutOfBoundsException - 如果偏移量无效。
public StringBuilder insert(int offset, int i)
int参数的字符串表示插入到此序列中。
整体效果就好像第二个参数通过方法String.valueOf(int)转换为一个字符串,并且该字符串的字符然后是inserted到指定的偏移量的这个字符序列。
offset参数必须大于或等于0 ,小于或等于该序列的length 。
offset - 偏移。
i - 一个
int 。
StringIndexOutOfBoundsException - 如果偏移量无效。
public StringBuilder insert(int offset, long l)
long参数的字符串表示插入到此序列中。
总体效果就好像通过方法String.valueOf(long)将第二个参数转换为字符串,并且该字符串的字符然后是inserted到指定的偏移量的这个字符序列。
offset参数必须大于或等于0 ,小于或等于该序列的length 。
offset - 偏移量。
l - a
long 。
StringIndexOutOfBoundsException - 如果偏移量无效。
public StringBuilder insert(int offset, float f)
float参数的字符串表示形式。
整体效果就好像第二个参数通过方法String.valueOf(float)转换为一个字符串,并且该字符串的字符然后是inserted到指定的偏移量的这个字符序列。
offset参数必须大于或等于0 ,小于或等于此序列的length 。
offset - 偏移。
f - a
float 。
StringIndexOutOfBoundsException - 如果偏移无效。
public StringBuilder insert(int offset, double d)
double参数的字符串表示插入到此序列中。
总体效果就好像第二个参数通过方法String.valueOf(double)转换为一个字符串,并且该字符串的字符然后是inserted到指定的偏移量的这个字符序列。
offset参数必须大于或等于0 ,小于或等于该序列的length 。
offset - 偏移。
d - a
double 。
StringIndexOutOfBoundsException - 如果偏移无效。
public int indexOf(String str)
this.toString().startsWith(str, <i>k</i>)
是true 。
str - 任何字符串。
-1 。
public int indexOf(String str, int fromIndex)
k ,其中:
k >= Math.min(fromIndex, this.length()) && this.toString().startsWith(str, k)
如果k的值不存在,则返回-1。
str - 要搜索的子字符串。
fromIndex - 从中开始搜索的索引。
public int lastIndexOf(String str)
this.length() 。
返回的索引是最大的值k
this.toString().startsWith(str, k)
是真的。
str - 要搜索的子字符串。
-1 。
public int lastIndexOf(String str, int fromIndex)
k <= Math.min(fromIndex, this.length()) && this.toString().startsWith(str, k)
如果k的值不存在,则返回-1。
str - 要搜索的子字符串。
fromIndex - 开始搜索的索引。
public StringBuilder reverse()
reverse方法之前,让n为该字符序列的字符长度(不是char值中的长度)。
那么新字符序列中的索引k处的字符等于旧字符序列中的索引nk-1处的字符。
请注意,相反的操作可能会导致在手术之前产生不配对的低代理和高代谢的替代对。 例如,反转“\ uDC00 \ uD800”会生成“\ uD800 \ uDC00”,它是一个有效的代理对。
public String toString()
String对象被分配并初始化以包含此对象当前表示的字符序列。
然后返回String 。
此序列的后续更改不影响String的内容。
toString在界面
CharSequence
public int length()
length在界面
CharSequence
public int capacity()
public void ensureCapacity(int minimumCapacity)
minimumCapacity论证。 2 。 minimumCapacity参数minimumCapacity正态,则此方法不执行任何操作,只需返回。
请注意,此对象的后续操作可以将实际容量降低到低于此处所请求的容量。
minimumCapacity - 最低所需容量。
public void trimToSize()
public void setLength(int newLength)
newLength ,在新的字符序列的索引k处的字符是相同的在旧序列索引k如果k小于原字符序列的长度的字符;
否则为空字符'\u0000' 。
换句话说,如果newLength参数小于当前长度,则长度将更改为指定的长度。
如果newLength参数大于或等于当前长度,则会附加足够的空字符( '\u0000' ),以使长度成为newLength参数。
newLength参数必须大于或等于0 。
newLength - 新的长度
IndexOutOfBoundsException - 如果
newLength参数为负数。
public char charAt(int index)
char在指定索引在这个序列值。
第一个char值为索引0 ,下一个索引为1 ,依此类推,与数组索引一样。
index参数必须大于或等于0 ,小于此序列的长度。
如果char由索引指定的值是surrogate ,则返回所述替代值。
charAt在界面
CharSequence
index - 所需指数
char值。
char指定指数值。
IndexOutOfBoundsException - 如果
index为负数或大于或等于
length() 。
public int codePointAt(int index)
char值(Unicode代码单位),范围从0到length() - 1 。
如果char给定索引处指定的值处于高代理项范围,下列指数小于该序列的长度,和char以下索引处的值是在低代理项范围,则补充代码点相应的这个代理对被退回。 否则返回给定索引处的char值。
index - 指数为
char值
index
IndexOutOfBoundsException - 如果
index参数为负数或不小于此序列的长度。
public int codePointBefore(int index)
char值(Unicode代码单位),范围从1到length() 。
如果char中(index - 1)处于低代理范围内,则(index - 2)不为负, char为(index - 2)为高代理范围,则返回替代对的补码代码值。 如果char值为index - 1是不配对的低代理或高替代值,则返回替代值。
index - 应该返回的代码点之后的索引
IndexOutOfBoundsException - 如果
index参数小于1或大于此序列的长度。
public int codePointCount(int beginIndex,
int endIndex)
beginIndex并延伸到char在索引endIndex - 1 。
因此,文本范围的长度( char s)为endIndex-beginIndex 。
该序列中的未配对代理计数为每个代码点。
beginIndex - 指向第一个
char的文本范围。
endIndex - 最后一个
char之后的索引文字范围。
IndexOutOfBoundsException - 如果
beginIndex为负数,或
endIndex大于此序列的长度,或
beginIndex大于
endIndex 。
public int offsetByCodePoints(int index,
int codePointOffset)
index由codePointOffset代码点偏移。
由index和codePointOffset给出的文本范围内的非配对替代品每个作为一个代码点。
index - 要偏移的索引
codePointOffset - 代码点的偏移量
IndexOutOfBoundsException - 如果
index为负或大于该序列的长度,或者如果
codePointOffset为正,并且从index开始的
index具有少于
codePointOffset码点,或者如果
codePointOffset为负,并且index之前的
index少于绝对值
codePointOffset代码点。
public void getChars(int srcBegin,
int srcEnd,
char[] dst,
int dstBegin)
dst 。
要复制的第一个字符在索引srcBegin ;
要复制的最后一个字符是索引srcEnd-1 。
要复制的srcEnd-srcBegin总数为srcEnd-srcBegin 。
字符被复制到的子阵列dst开始于索引dstBegin和在索引结束:
dstbegin + (srcEnd-srcBegin) - 1
srcBegin - 在此偏移量开始复制。
srcEnd - 在此偏移处停止复制。
dst - 将数据复制到的数组。
dstBegin - 偏移到
dst 。
IndexOutOfBoundsException - 如果有以下任何一个:
srcBegin为负数 dstBegin为负数 srcBegin参数大于srcEnd参数。 srcEnd大于this.length() 。 dstBegin+srcEnd-srcBegin大于dst.length public void setCharAt(int index,
char ch)
ch 。
该序列被改变以表示一个新的字符序列,其是相同的原字符序列,不同之处在于它包含字符ch在位置index 。
索引参数必须大于或等于0 ,并且小于此序列的长度。
index - 要修改的字符的索引。
ch - 新角色。
IndexOutOfBoundsException - 如果
index为负数或大于或等于
length() 。
public String substring(int start)
String ,其中包含此字符序列中当前包含的字符的子序列。
子串从指定的索引开始,并延伸到该序列的末尾。
start - 开始索引,包括。
StringIndexOutOfBoundsException - 如果
start小于零或大于该对象的长度。
public CharSequence subSequence(int start, int end)
调用此方法的形式
sb.subSequence(begin, end)
行为与调用完全相同
sb.substring(begin, end)
提供这种方法,使该类可以实现CharSequence接口。
subSequence在界面
CharSequence
start - 开始索引(含)。
end - 结束索引,排他。
IndexOutOfBoundsException - 如果
start或
end为负数,如果
end大于
length() ,或者如果
start大于
end
public String substring(int start, int end)
String ,其中包含此序列中当前包含的字符的子序列。
子串开始于指定start并延伸到字符索引end - 1 。
start - 开头索引(含)。
end - 结束索引,独家。
StringIndexOutOfBoundsException - 如果
start或
end为负数或大于
length() ,或
start大于
end 。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.