当前位置: 技术问答>java相关
请教个高手
来源: 互联网 发布时间:2015-05-26
本文导语: 请问: StringBuffer的函数:append()是什么意思?实在当前位置添加,还是替换?还是在末尾添加? | StringBuffer中提供append方法来将一个字符串附加到另一个字符串尾,对于append方法也实现了多态: public...
请问:
StringBuffer的函数:append()是什么意思?实在当前位置添加,还是替换?还是在末尾添加?
StringBuffer的函数:append()是什么意思?实在当前位置添加,还是替换?还是在末尾添加?
|
StringBuffer中提供append方法来将一个字符串附加到另一个字符串尾,对于append方法也实现了多态:
public synchronized void StringBuffer append (String str)
用于将一个字符串加到字符缓冲区的末尾。
public synchronized void StringBuffer append (char ch[ ])
在缓冲区末尾加上字符数组。
public synchronized void StringBuffer append ( char ch) 在缓冲区末尾加上字符。
public synchronized void StringBuffer append ( int num)
此方法中需调用String.valueOf( ) 方法以将其他数据类型转换为字符串类,同样可以对float、double、boolean等进行操作。
前面我们已经提到,String中的"+"操作可以由StringBuffer中的append和toString完成,例如:
String s = "He is " + age + "years old";
等同于 String s = new StringBuffer ("He is ")
.append (age )
.append("years old")
.toString( );
因为类String中的字符串是不可变的,所以不能对其进行增加或其他修改,Java编辑器则将对类String的实例的修改转化为类StringBuffer中相似的操作,它实际上对于类String的常量产生一个相应的类StringBuffer中的例。如上面所表示的,构造了一个字符缓冲区"He is " 以便调用append方法,而方法append返回的是对同一个实例的参考值,所以操作"+"可以继续调用append方法。最后,编辑器调用方法toString( )将可修改的StringBuffer的实例转换回去,即成为类String中的一个字符串常量。
public synchronized void StringBuffer append (String str)
用于将一个字符串加到字符缓冲区的末尾。
public synchronized void StringBuffer append (char ch[ ])
在缓冲区末尾加上字符数组。
public synchronized void StringBuffer append ( char ch) 在缓冲区末尾加上字符。
public synchronized void StringBuffer append ( int num)
此方法中需调用String.valueOf( ) 方法以将其他数据类型转换为字符串类,同样可以对float、double、boolean等进行操作。
前面我们已经提到,String中的"+"操作可以由StringBuffer中的append和toString完成,例如:
String s = "He is " + age + "years old";
等同于 String s = new StringBuffer ("He is ")
.append (age )
.append("years old")
.toString( );
因为类String中的字符串是不可变的,所以不能对其进行增加或其他修改,Java编辑器则将对类String的实例的修改转化为类StringBuffer中相似的操作,它实际上对于类String的常量产生一个相应的类StringBuffer中的例。如上面所表示的,构造了一个字符缓冲区"He is " 以便调用append方法,而方法append返回的是对同一个实例的参考值,所以操作"+"可以继续调用append方法。最后,编辑器调用方法toString( )将可修改的StringBuffer的实例转换回去,即成为类String中的一个字符串常量。