卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

string和string builder的區(qū)別 stringbuffer和stringbuilder的異同?

stringbuffer和stringbuilder的異同?stringbuffer 一下簡(jiǎn)稱buffer stringbuilder 以下簡(jiǎn)稱builder buffer 是線程安全的,builde

stringbuffer和stringbuilder的異同?

stringbuffer 一下簡(jiǎn)稱buffer stringbuilder 以下簡(jiǎn)稱builder buffer 是線程安全的,builder是不安全的。 buffer 速度慢,builder速度快。 其實(shí)在string ss “ss”;的過(guò)程中,就是調(diào)用兩次stringbuffer,StringBuffer sa new StringBuffer() (

string、stringbuffer和stringbuilder有什么區(qū)別?

在java中有3個(gè)類來(lái)負(fù)責(zé)字符的操作。

是進(jìn)行單個(gè)字符操作的,

對(duì)一串字符進(jìn)行操作。不可變類。

也是對(duì)一串字符進(jìn)行操作,但是可變類。

String:

是對(duì)象不是原始類型.

為不可變對(duì)象,一旦被創(chuàng)建,就不能修改它的值.

對(duì)于已經(jīng)存在的String對(duì)象的修改都是重新創(chuàng)建一個(gè)新的對(duì)象,然后把新的值保存進(jìn)去.

String 是final類,即不能被繼承.

StringBuffer:

是一個(gè)可變對(duì)象,當(dāng)對(duì)他進(jìn)行修改的時(shí)候不會(huì)像String那樣重新建立對(duì)象

它只能通過(guò)構(gòu)造函數(shù)來(lái)建立,

StringBuffer sb new StringBuffer()

note:不能通過(guò)付值符號(hào)對(duì)他進(jìn)行付值.

sb to here!//error

對(duì)象被建立以后,在內(nèi)存中就會(huì)分配內(nèi)存空間,并初始保存一個(gè)null.向StringBuffer

中付值的時(shí)候可以通過(guò)它的append方法.

(hello)

StringBuilder:

是一個(gè)可變對(duì)象,和StringBuffer相比,不是線程安全的,一般用在單個(gè)線程操作的時(shí)候(這種情況很普遍,所以一般優(yōu)先選用StringBuilder),速度比StringBuffe快很多。

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

String str new String( to )

str here

的處理步驟實(shí)際上是通過(guò)建立一個(gè)StringBuffer,讓侯調(diào)用append(),最后

再將StringBuffer toSting()

這樣的話String的連接操作就比StringBuffer多出了一些附加操作,當(dāng)然效率上要打折扣.

并且由于String 對(duì)象是不可變對(duì)象,每次操作Sting 都會(huì)重新建立新的對(duì)象來(lái)保存新的值.

這樣原來(lái)的對(duì)象就沒(méi)用了,就要被垃圾回收.這也是要影響性能的.

看看以下代碼:

將26個(gè)

標(biāo)簽: