星空网 > 软件开发 > Java

String和StringBuffer的区别?

  这个我经常用的是String,说真的,用StringBuffer的次数还真是少,唯一让我觉得特别的方法就是appand这个方法是StringBuffer独有的,那么他们到底有什么区别呢,我们知道String是字符串,而字符串是对象,对象里有一个概念叫做可变对象和非可变对象,String属于非可变对象,StringBuffer属于可变对象,可能有人会问String str=“aa”;str="bb";这句话也能通过编译啊,没有任何错误啊,是的,这句话的确没有一丁点的错误,不过你忽略了一点,就是“aa”和“bb”是字符串吧,字符串是对象吧,他们压根就不是一个对象,说String是不可变对象,其实在String str="aa"这句话其实是一个引用的使用,他引用到了一个对象,str在等于“aa”之前他所指向的地址和后来并不是一样的,就是说他并不是把值给了str,而是把对象的引用给了他,换句话说就是把对象的地址给了他,然而你想改变“aa”这个对象地址的数据通过String是不可能实现的,就像这个程序:String和StringBuffer的区别?

这个程序返回值和输入的不会有变化。

  下面说说StringBuffer,这个类型可以进行修改的,就是说他是在原来地址上进行修改,差别就在于此。

  因此得到的结论是:如果你对字符串中的内容经常进行操作,特别是内容要修改时,那么使用StringBuffer,如果最后需要String,那么使用StringBuffer的toString()方法好了!

  也许这就是你的程序的性能瓶颈!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  • 非可变对象一旦创建之后就不能再被改变,可变对象则可以在创建之后被改变。
  • String对象是非可变对象,StringBuffer对象则是可变对象。
  • 为获得更佳的性能你需要根据实际情况小心谨慎地选择到底使用这两者中的某一个。



原标题:String和StringBuffer的区别?

关键词:string

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

VAT税务报税指南一步一步走向成功:https://www.kjdsnews.com/a/1339095.html
VAT税务报税年费优惠政策汇总:https://www.kjdsnews.com/a/1339096.html
VAT税务如何正确收取:https://www.kjdsnews.com/a/1339097.html
VAT税务发票有效期有多长?:https://www.kjdsnews.com/a/1339098.html
VAT税务代理服务的重要性:https://www.kjdsnews.com/a/1339099.html
VAT税务代理服务的优势与方法:https://www.kjdsnews.com/a/1339100.html
怪物在游轮上复活的电影 怪物在游轮上复活的电影叫什么:https://www.vstour.cn/a/411230.html
在线旅游如何选择更优惠的旅游产品?:https://www.vstour.cn/a/411231.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流