struggle和strive區(qū)別 string和thread的區(qū)別?
string和thread的區(qū)別?線有時(shí)指的是針的線(羊毛/棉線),但線不是。但說到繩子,幾乎是一樣的,只是線會(huì)很細(xì),而繩子重量很輕,沒有細(xì)度和長(zhǎng)度的暗示。string和stringbuff的區(qū)別?字
string和thread的區(qū)別?
線有時(shí)指的是針的線(羊毛/棉線),但線不是。但說到繩子,幾乎是一樣的,只是線會(huì)很細(xì),而繩子重量很輕,沒有細(xì)度和長(zhǎng)度的暗示。
string和stringbuff的區(qū)別?
字符串:沒有方法更改字符串類中現(xiàn)有字符串中的字符。因?yàn)镴ava字符串中的單個(gè)字符不能更改,所以JDK文檔中名為string class的對(duì)象不能更改。
1)結(jié)構(gòu)ingBuffer:StringBuffer類屬于一個(gè)輔助類,它可以預(yù)先分配一個(gè)指定長(zhǎng)度的內(nèi)存塊來(lái)建立一個(gè)字符串緩沖區(qū)。這樣,使用StringBuffer類的append方法來(lái)追加字符比使用string操作符向現(xiàn)有字符串中添加字符要高效得多。因?yàn)槊看问褂眠\(yùn)算符將字符添加到字符串時(shí),string對(duì)象都需要找到一個(gè)新的內(nèi)存空間來(lái)容納更大的字符串,這是一個(gè)非常耗時(shí)的操作。添加多個(gè)字符意味著一次又一次地將內(nèi)存重新分配給字符串。使用StringBuffer類可以避免這個(gè)問題。
2)StringBuffer是線程安全的,很容易在多線程程序中使用,但程序的執(zhí)行效率相對(duì)較慢。
在C 編程中,領(lǐng)導(dǎo)堅(jiān)持用char而不用string,string有那么可怕嗎?
在C中優(yōu)先使用字符串是一個(gè)好習(xí)慣。除非C的頑固習(xí)慣,否則應(yīng)該使用字符串而不是字符。
Char用于處理任何8位數(shù)據(jù)類型,如邏輯值、整數(shù)、字符ASCII碼等。要處理字符串,需要使用Char[]數(shù)組,這很麻煩,也很難控制。
String是一個(gè)模板類,專門用于處理字符串,并封裝了許多成員函數(shù)來(lái)處理字符串。它是C標(biāo)準(zhǔn)庫(kù)的一部分,所有C實(shí)現(xiàn)都支持它,并由C創(chuàng)始人推薦。
選擇使用哪一種并不困難。