java中拼接和 的区别_浅析Java中String与StringBuffer拼接的区别

学习笔记:

1、String拼接会创建一个新的String对象,存储拼接后的字符串;

StringBuffer拼接是直接在本身拼接,会即时刷新。

2.String只能拼接String类型的字符串;

StringBuffer能够拼接所有的类型的值。

public class Test {

public static void main(String[] args) {

String str1="abc";

String str2="cba";

//使用Stirng的concat拼接

String s1=str1.concat(str2);

String s2=str2.concat(str1);

System.out.println("使用concat互相拼接:"+s1+":"+s2);

//使用StringBuffer的append拼接

StringBuffer sb1=new StringBuffer(str1);

StringBuffer sb2=new StringBuffer(str2);

StringBuffer s3=sb1.append(sb2);

StringBuffer s4=sb2.append(sb1);

System.out.println("使用StringBuffer互相拼接:"+s3+":"+s4);

System.out.println("s3.append(s3):"+s3.append(s3)); //输出结果为:s3.append(s3):abccbaabccba

System.out.println("s3:"+s3);         //输出结果为:s3:abccbaabccba

System.out.println(s1.concat(s2)==s1);//false,拼接会重新创建一个String(String的长度是不可变的)

System.out.println(s3.append(s1)==s3);//true,StringBuffer是对自己进行操作会即时刷新

int num=123;

/*str1.concat(num);---此处报错*/

StringBuffer s5=s4.append(num);

System.out.println("s5:"+s5);

}

}

输出结果是:

使用concat互相拼接1:abccba:cbaabc

使用StringBuffer互相拼接1:abccba:cbaabccba

s3.append(s3):abccbaabccba

s3:abccbaabccba

false

true

s5:cbaabccba123

以上所述是小编给大家介绍的Java中String与StringBuffer拼接的区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值