一個string占幾個字節(jié) java中String占幾個字節(jié)?
java中String占幾個字節(jié)?Java中無論是漢字還是英文字母都是用Unicode編碼來表示的,一個Unicode碼是16位,每字節(jié)是8位,所以一個Unicode碼占兩字節(jié)。但是英文字母比較特殊,
java中String占幾個字節(jié)?
Java中無論是漢字還是英文字母都是用Unicode編碼來表示的,一個Unicode碼是16位,每字節(jié)是8位,所以一個Unicode碼占兩字節(jié)。但是英文字母比較特殊,源自于8位(1字節(jié))的ASCII嗎,于是在Unicode碼僅使用了低8位(1字節(jié))就可以表示,高8位的話不使用也無所謂。所以
char c="a"
System.out.println(c.getBytes().lenth()),得到的是1(字節(jié))
但漢字就完整地使用了16位(2字節(jié))的Unicode,所以
char c="中"
System.out.println(c.getBytes().lenth()),得到的是2(字節(jié))
綜上,c="a"在內(nèi)存中確實只占1字節(jié),但這不意味著String s="abc"在內(nèi)存中只占3字節(jié)。應(yīng)該這么說,String s="abc"至少在內(nèi)存中占3字節(jié)。這是因為char是基本數(shù)據(jù)類型,而String確是對象類型。
面對一工科男來應(yīng)聘算法工程師,卻不知道int是幾個字節(jié),一個字節(jié)有幾位,這是一種怎樣的體驗?
算法工程師目前的分工比較細(xì),有不少算法工程師并不做算法實現(xiàn),所以在編程語言的使用方面也可能存在不熟悉的情況。但是現(xiàn)在不少程序員對基礎(chǔ)知識的掌握也沒有以前那么扎實,這是一個比較明顯的現(xiàn)象。
我經(jīng)常作為面試官參加一些企業(yè)的程序員面試工作,在面試的過程中我一般會問一些比較基礎(chǔ)的問題,以便于了解程序員的基礎(chǔ)知識結(jié)構(gòu)。像int是幾個字節(jié)的問題我也問過,大部分程序員是能夠回答上來的。類似的問題還有計算機(jī)端口號的范圍、網(wǎng)絡(luò)尋址方式、TCP協(xié)議與UDP協(xié)議的區(qū)別、接口的作用、XOR運(yùn)算的規(guī)則等等問題,一般這些問題都是問初級程序員比較多,對于中高級程序員則一般問一些具體的解決方案。
對于一些簡單的基礎(chǔ)問題的回答能反映出程序員的基礎(chǔ)知識結(jié)構(gòu),按照歷史經(jīng)驗來看,對于一些非計算機(jī)專業(yè)的程序員來說可能在回答這些問題的時候會顯得吃力,因為目前的很多程序設(shè)計語言都比較簡單,在很多實驗中也練習(xí)不到這些基礎(chǔ)知識,但是這些基礎(chǔ)知識對程序員來說還是比較重要的。
很多情況下,即使沒有回答上來一些基礎(chǔ)性的問題也不要?dú)怵H,畢竟現(xiàn)在的開發(fā)環(huán)境與早些年有很大的不同,程序設(shè)計更多的關(guān)注于模塊化、擴(kuò)展性等問題。但是基礎(chǔ)知識的掌握對于程序員來說還有很有必要的,尤其是一些常識性問題。
我使用Java、C和Python的時間比較長,也在頭條上陸續(xù)寫了一些關(guān)于程序設(shè)計、大數(shù)據(jù)方面的文章,對這些內(nèi)容感興趣的朋友可以關(guān)注我,相信一定會有所收獲。
謝謝!
存儲一個英文字母占幾個字節(jié)?
一個字母占一個字節(jié)。
1、英文和數(shù)字占一個字節(jié);
2、中文占一個字符,也就是兩個字節(jié);
3、字符不等于字節(jié)。
字符(char)是 Java 中的一種基本數(shù)據(jù)類型,由 2 個字節(jié)組成,范圍從 0 開始,到 2^16-1。
字節(jié)是一種數(shù)據(jù)量的單位,一個字節(jié)等于 8 位。所有的數(shù)據(jù)所占空間都可以用字節(jié)數(shù)來衡量。例如一個字符占 2 個字節(jié),一個 int 占 4 個字節(jié),一個 double 占 8 個字節(jié) 等等。
1字符=2字節(jié);
1Byte=8bit1k=2^10;b:位;B:字節(jié)1kb=1024 位1kB=1024 字節(jié)。
Byte數(shù)據(jù)類型(字節(jié)型)用一個字節(jié)(Byte)儲存,可區(qū)別256個數(shù)字,取值范圍:0到255。 Byte是從0-255的無符號類型,所以不能表示負(fù)數(shù)。具體參照數(shù)據(jù)類型。
java double是幾個字節(jié)?
java中,浮點(diǎn)型有兩種:
float:4個字節(jié) 32 位
double :8個字節(jié) 64位
注:默認(rèn)的是double類型,如3.14是double類型的,加后綴F(3.14F)則為float類型的。