java中的字節(jié)和字符怎么用?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
成都創(chuàng)新互聯(lián)始終堅(jiān)持【策劃先行,效果至上】的經(jīng)營理念,通過多達(dá)十余年累計(jì)超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的營銷推廣解決方案,現(xiàn)已廣泛運(yùn)用于各行各業(yè)的客戶,其中包括:塔吊租賃等企業(yè),備受客戶贊賞。“字節(jié)”是byte,“位”是bit ;
1 byte = 8 bit ;
char 在Java中是2個(gè)字節(jié)。java采用unicode,2個(gè)字節(jié)(16位)來表示一個(gè)字符。
例子代碼如下:
public class Test { public static void main(String[] args) { String str= "中"; char x ='中'; byte[] bytes=null; byte[] bytes1=null; try { bytes = str.getBytes("utf-8"); bytes1 = charToByte(x); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("bytes 大?。?+bytes.length); System.out.println("bytes1大小:"+bytes1.length); } public static byte[] charToByte(char c) { byte[] b = new byte[2]; b[0] = (byte) ((c & 0xFF00) >> 8); b[1] = (byte) (c & 0xFF); return b; } }
運(yùn)行結(jié)果:
bytes 大?。? bytes1大?。?
java是用unicode來表示字符,"中"這個(gè)中文字符的unicode就是2個(gè)字節(jié)。
String.getBytes(encoding)方法是獲取指定編碼的byte數(shù)組表示,通常gbk/gb2312是2個(gè)字節(jié),utf-8是3個(gè)字節(jié)。
如果不指定encoding則取系統(tǒng)默認(rèn)的encoding。
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。