StringBuilder是什麼意思

2023-01-17 08:55:09 字數 3585 閱讀 5098

1樓:匿名使用者

string str1 = mystring";

string str2 = mystring";

str1和str2 具有相同的指標 也就是 記憶體中只有一個mystring

如果 改變str1的值 並不會改變mystring記憶體的值 會在記憶體中重新劃分一塊區域來儲存新的字串 同時改變str1的指標。

stringbuilder則不一樣 當你new一個stringbuilder時就會劃分一塊記憶體給stringbuilder例項使用 當你append或remove或進行其他操作是並不會重新分配記憶體 除非你的新字串長度超過了stringbuilder例項的預設大小才會重新分配記憶體。

string 或 stringbuilder 物件的串聯操作的效能取決於記憶體分配的發生頻率。string 串聯操作每次都分配記憶體,而 stringbuilder 串聯操作僅當 stringbuilder 物件緩衝區太小而無法容納新資料時才分配記憶體。因此,如果串聯固定數量的 string 物件,則 string 類更適合串聯操作。

這種情況下,編譯器甚至會將各個串聯操作組合到一個操作中。如果串聯任意數量的字串,則 stringbuilder 物件更適合串聯操作;例如,某個迴圈對使用者輸入的任意數量的字串進行串聯。(msdn)

2樓:網友

stringbuilder叫字串快取區物件,使用時可以不斷新增字元、字串等已有內容

需要使用時呼叫tostring()獲得物件裡的所有字串。

作用:

簡化字串常量池的個數,節省記憶體。

stringbuilder相當於一個池子,可以存放很多已有的字串,使用時可以以此獲得很長的字串,從而優化程式。

jdk底層使用stringbuilder實現字串拼接。

3樓:匿名使用者

簡單地說比直接拼接字串效率高,也更節省記憶體。

c++是什麼意思?

4樓:千鋒教育

c++是在c語言的基礎上開發的一種物件導向程式語言,應用廣泛;c++支援多種程式設計正規化 物件導向程式設計、泛型程式設計和過程化程式設計。最新正式標準c++於2023年8月18日公佈。 其程式設計領域眾廣,常用於系統開發,引擎開發等應用領域,是至今為止最受廣大程式設計師受用的最強大程式語言之一,支援類:

封裝、繼承、多型等特性。

語言特點:優點:1、c++設計成靜態型別、和c同樣高效且可移植的多用途程式設計語言。

2、c++設計直接的和廣泛的支援多種程式設計風格(程式化程式設計、資料抽象化、物件導向程式設計、泛型程式設計)。

3、c++設計無需複雜的程式設計環境。

4、c++語言靈活,運算子的資料結構豐富、具有結構化控制語句、程式執行效率高,而且同時具有高階語言與組合語言的優點,與別的語言相比 ,可以直接訪問實體地址,與組合語言相比又具有良好的可讀性和可移植性。

5、c++語言的主要特點表現在兩個方面,一是儘量相容c,二是支援物件導向的方法。有c的簡潔、高效的接近組合語言等特點,對c的型別系統進行了改革的擴充,因此c++比c更安全,c++的編譯系統能檢查出更多的型別錯誤。另外,由於c語言的廣泛使用,因而極大的促進了c++的普及和推廣。

6、c++語言最有意義的方面是支援物件導向的特徵。雖然與c的相容使得c++具有雙重特點,但在概念上完全與c不同,更具物件導向的特徵。

7、c++引入了物件導向的概念,使得開發人機互動型別的應用程式更為簡單、快捷。很多優秀的程式框架包括boost、qt、mfc、owl、wxwidgets、wtl就是使用的c++。

缺點:1、c++由於語言本身複雜。c++的編譯系統受到c++的複雜性的影響,非常難於編寫,即使能夠使用的編譯器如果存在問題,可能難於被發現。

2、由於本身的複雜性,複雜的c++程式的正確性相當難於保證。

3、c++對於安全性也無法保證,所以,很容易依靠c++編譯出病毒來。

5樓:earth弗蘭克陳

c++是在c語言的基礎上bai開發的一種du物件導向程式設計zhi語言,應用廣泛;c++支援多dao種程式設計正規化 --面向對回象程式設計、

答泛型程式設計和過程化程式設計。最新正式標準c++於2023年8月18日公佈。其程式設計領域眾廣,常用於系統開發,引擎開發等應用領域。

stringbuilder 類的用途是什麼?

stringbuilder類怎麼寫? 5

6樓:天涯海峰

如果你要寫的一個類似的類的話。提供一種思路,stringbuilder是可以變長度的陣列。

但是現實中沒有必要,如果需要的話,你寫成泛型類!

建立stringbuilder類的目的是什麼

7樓:匿名使用者

起到字元拼接的作用,可以減少sql語句注入安全性問題。

j**a中的stringbuilder有什麼用?什麼時候用stringbuilder?

8樓:匿名使用者

string str="a"+"b"+"c"..你這個有4個物件。。

上面的 有一個物件。。。

stringbuilderôõã´ó㣿

stringbuffer與stringbuilder的區別?

9樓:聚成都

二者的區別主要是在執行速度和執行緒安全這兩方面。

1、stringbuffer 與 stringbuilder 中的方法和功能完全是等價的。

2、只是stringbuffer 中的方法大都採用了 synchronized 關鍵字進行修飾,因此是執行緒安全的,而 stringbuilder 沒有這個修飾,可以被認為是執行緒不安全的。

3、在單執行緒程式下,stringbuilder效率更快,因為它不需要加鎖,不具備多執行緒安全而stringbuffer則每次都需要判斷鎖,效率相對更低。

10樓:匿名使用者

1. 在執行速度方面的比較:stringbuilder > stringbuffer

2. stringbuffer與stringbuilder,他們是字串變數,是可改變的物件,每當我們用它們對字串做操作時,實際上是在一個物件上操作的,不像string一樣建立一些物件進行操作,所以速度就快了。

3. stringbuilder:執行緒非安全的。

stringbuffer:執行緒安全的。

當我們在字串緩衝去被多個執行緒使用是,jvm不能保證stringbuilder的操作是安全的,雖然他的速度最快,但是可以保證stringbuffer是可以正確操作的。當然大多數情況下就是我們是在單執行緒下進行的操作,所以大多數情況下是建議用stringbuilder而不用stringbuffer的,就是速度的原因。

對於三者使用的總結:1.如果要操作少量的資料用 = string

2.單執行緒操作字串緩衝區 下操作大量資料 = stringbuilder

3.多執行緒操作字串緩衝區 下操作大量資料 = stringbuffer

什么是姐妹,什么是親情,什么是愛情,什么是有情,什么是幸福

按順序給你回答 跟你一起瘋一起癲的 有血緣關係且真心為你好的 一個異性,能包容你,呵護你,給你第二個家 沒有血緣關係,但對你不離不棄,可以和你一起笑和哭的幸福的定義就太廣了,自己覺得幸福就是幸福 什麼是親情,什麼是友情,什麼又是愛情?無私奉獻是親情。理上往來的是有情,相互尊重的是愛情。現實生活中是有...

朋友是什么 哥們是什么 兄弟是什么 知已是什么誰能告訴我準確很詳細的告訴我呢 謝謝

朋友是用來出賣的,他也會出賣你,寧願有狼一樣的敵人也不要狗一樣的朋友,所以不能輕易相信 哥們是用來利用的,哥們義氣嘛,他幫你,你也得幫他,可信可不信 而兄弟嘛,卻是太難得,沒有經歷一些坎坷是看不出來的,所以要珍惜 所謂的知己就是可以聆聽你內心的人,懂你的人,或許不奧什麼語言就能瞭解你的心思,所以人生...

樂觀是什意思呢,樂觀是什意思呢,?

樂觀 l gu n 精神愉快,對事物的發展充滿信心 跟 悲觀 相對 情緒 不要盲目 1 樂觀,是一種最為積極的性格因素之一。樂觀就是在無論什麼情況下,即使再差也保持良好的心態,也相信壞事情總會過去,相信陽光總會再來的心境。體育和運動可以增進人體的健康和人的樂觀情緒,而樂觀情緒卻是長壽的一項必要條件。...