一、StringBuffer与String的相互转换
1、将StringBuffer转换成String
StringBuffer类成员toString函数可将其转换成String类型。
1
2
|
StringBuffer buffer = newStringBuffer(“abcd”); String str = buffer.toString(); |
通过String类中的构造将一个StringBuffer类转换为String类:String(StringBuffer buffer)
1
2
|
StringBuffer buffer = newStringBuffer(“abcd”); String str = newString(buffer); |
2、将String转换成StringBuffer
方式一:利用构造函数
1
2
|
String str=“Hello World.”; StringBuffer buffer = new StringBuffer(str); |
方式二:调用append函数
1
2
3
|
String str=“Hello World.”; StringBuffer buffer = new StringBuffer(); buffer.append(str); |
二、String与字符数组的相互转换
1、将String转换成字符数组
String类成员toCharArray函数可将其转换成字符数组。
1
2
|
String str = “Hello World.”; // 创建一个String对象 char [] ch = str.toCharArray(); // 再调用String对象的toCharArray函数转换成字 |
2、将字符数组转换成String
方法1:利用String类的构造函数,直接在构造String时完成转换。
1
2
|
char [] data = { 'a' , 'b' , 'c' }; String str = new String(data); |
方法2:调用String类的valueOf函数转换。
1
|
String.valueOf( char [] ch); |
三、将StringBuffer与字符数组的相互转换
1、将StringBuffer转换成字符数组
在Java中不支持直接从StringBuffer转换成字符数组。而是先将StringBuffer转换成String,
然后由String调用toCharArray函数转换成字符数组。
1
2
3
|
StringBuffer stringBuffer = new StringBuffer(“Hello World.”); String str = stringBuffer.toString(); // 先将StringBuffer对象转换成String对象 char [] ch = str.toCharArray(); // 再调用String对象的toCharArray函数转换成字符数组 |
2、将字符数组转换成StringBuffer
与将StringBuffer转换成字符数组类似,需要先将字符数组转换成String,然后再由String转换成StringBuffer。
1
2
3
4
5
|
char [] data = { 'H' , 'e' , 'l' , 'l' , 'o' , 'd' }; String str = new String(); //或者直接调用构造方法:String str = new String(data); str = String.valueOf(data); //调用String类的valueOf函数将字符数组转换成String StringBuffer buffer = new StringBuffer(); buffer = buffer.append(str); //调用append函数将String转换成Stringbuffer |
总结
以上所述是小编给大家介绍的Java中字符数组、String类、StringBuffer三者之间相互转换,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://www.cnblogs.com/kungfupanda/p/9066990.html