首页 > 开发 > Java > 正文

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

2024-07-13 10:09:25
字体:
来源:转载
供稿:网友

学习笔记:

  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);<br>          StringBuffer s3=sb1.append(sb2);      StringBuffer s4=sb2.append(sb1);    System.out.println("使用StringBuffer互相拼接:"+s3+":"+s4);<br>    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是对自己进行操作会即时刷新    <br>                    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):abccbaabccbas3:abccbaabccbafalsetrues5:cbaabccba123

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


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表