String与StingBuffer的区别 nssting 转jsonstring

http://shop69483277StringBuffer是可变的而String是不可变的.
而且String用得多个的话会占用不同的内存.
如:String str = "bb";
str = "aa";
前一个bb的内存地址不变,当又给它赋值为aa时它又指向aa的地址.

String s ;
每次对s进行赋值操作是都将生成一个新的String实例;
StingBuffer sb;
sb则不然,它始终是同一个实例
所以在经常动态的改变字符串的值是用StingBuffer效率比较高,java生成一个实例的代价较大。

String专门定义不变字符串,而StingBuffer用来定义可变字符串。
两者在性能上椰油很大的区别:
String比较适合短的字符串,StingBuffer适合动态增加的字符串。
在实际使用过程中,要求:String+String这种在BS开发结构中不被提倡,对性能影响比较大。而StingBuffer则是比较推荐使用方法。

另外两者的性能差别原因在于:“String是不变的对象,对它进行修改(+操作)的本质为:new一个StringBuilder对象,然后调用StringBuilder类的append方法,最后调用toString方法,并销毁这个StringBuilder对象”

String:
是对象不是原始类型.
为不可变对象,一旦被创建,就不能修改它的值.
对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去.
String 是final类,即不能被继承.

StringBuffer:
是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象
它只能通过构造函数来建立,
StringBuffer sb = new StringBuffer();
note:不能通过付值符号对他进行付值.
sb = "welcome to here!";//error
对象被建立以后,在内存中就会分配内存空间,并初始保存一个null.向StringBuffer
中付值的时候可以通过它的append方法.
sb.append("hello");

字符串连接操作中StringBuffer的效率要比String高:

String str = new String("welcome to ");
str += "here";
的处理步骤实际上是通过建立一个StringBuffer,让侯调用append(),最后
再将StringBuffer toSting();
这样的话String的连接操作就比StringBuffer多出了一些附加操作,当然效率上要打折扣.

并且由于String 对象是不可变对象,每次操作Sting 都会重新建立新的对象来保存新的值.
这样原来的对象就没用了,就要被垃圾回收.这也是要影响性能的.

http://shop69483277

  

爱华网本文地址 » http://www.413yy.cn/a/25101011/64271.html

更多阅读

大理石与花岗岩的区别 大理石有辐射吗

大理石与花岗岩的区别 ? ?一、按石材成因划分:1.大理石大理石属于变质岩变质岩是在高温高压和矿物质的混合作用下由一种石头自然变质成的另一种石头。质变可能是重结晶、纹理改变或颜色改变。天然大理石是地壳中原有

电脑待机与休眠的区别 电脑待机和休眠的区别

电脑待机与休眠的区别? ? 首先确定的是休眠和待机不能下载的。因为硬盘都断电了。?休眠和待机的原理都是吧内存的东西保存住,下次就可以不用重新加载操作系统,但他们最大的不同是前者把内存中的数据临时保存到硬盘中,下次开机就直接

黄金期货交易规则与股票的区别 商品期货交易规则

黄金期货交易规则与股票的区别——简介国内第一个贵金属期货品种黄金期货2008年1月9日正式在上海期货交易所挂牌交易。上海期货交易所昨日发布公告,将各个期限黄金期货合约挂牌当日的基准价规定在209.99元/克的水平上。黄金期货交易

港货与行货的区别 港版和国行怎么分辨

港货与行货的区别——简介港货和行货通常代表从不同销售渠道进入大陆的电子产品,下面简单和大家分享港货和行货的区别。港货与行货的区别——工具/原料聪明的你港货与行货的区别——方法/步骤港货与行货的区别 1、

函数COUNT与COUNTA的区别 excel count和counta

函数COUNT与COUNTA的区别——简介COUNT与COUNTA经常用在Excel统计参数列表中指定项个数的情景中。而两者也是存在这差别的,如果不注意的话,这两个函数就容易搞混;这两个函数应该说很简单,也比较容易掌握,但大多数人可能只知COUNT不知COUN

声明:《String与StingBuffer的区别 nssting 转jsonstring》为网友我的未来梦分享!如侵犯到您的合法权益请联系我们删除