gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

char類型要占幾個字節(jié)

char類型在C或C++中占1個字節(jié),在java中占2個字節(jié)。char用于C或C++中是定義字符型變量的,而char數(shù)據(jù)類型是一種整數(shù)類型,只會占據(jù)1個字節(jié)。而在java中char類型占2個字節(jié)是因為Java編譯器默認(rèn)使用Unicode編碼,因此2字節(jié)(16位)可以表示所有字符。

char類型要占幾個字節(jié)

本教程操作環(huán)境:windows7系統(tǒng)、Dell G3電腦。

我百度搜索“char占幾個字節(jié)”,得到下面的答案:

char類型要占幾個字節(jié)

char用于C或C++中定義字符型變量,是一種整數(shù)類型,只占一個字節(jié),取值范圍為 -128 ~ +127(-27~27-1)。

char類型占1字節(jié),就是8位,所能存儲的正整數(shù)是 0111 1111,即127。

顯然這不是我們想要的結(jié)果,于是我繼續(xù)搜索“java中的char占幾個字節(jié)”

char類型要占幾個字節(jié)

Java中的char用于存放字符的數(shù)據(jù)類型,占用2個字節(jié),采用unicode編碼,它的前128字節(jié)編碼與ASCII兼容,只不過有些字符需要兩個char來表示。

為什么C或C++和java中的char占用字節(jié)數(shù)不相同?

有些字符需要兩個char來表示又是什么意思?

編碼

在討論這個問題之前,我們先對部分知識點做一下普及。

首先我們都知道計算機(jī)中儲存的信息都是用二進(jìn)制數(shù)表示的,那怎么樣讓計算機(jī)存儲我們?nèi)祟愑玫臐h字或英文呢?

比如如何將'a'轉(zhuǎn)換為二進(jìn)制存儲到計算機(jī)中,稱為編碼

而將存儲在計算機(jī)中的二進(jìn)制數(shù)解析顯示出來,稱為解碼

字符集

字符(Character)是各種文字和符號的總稱,包括各國家文字、標(biāo)點符號、圖形符號、數(shù)字等。字符集(Character set)是多個字符的集合,字符集種類較多,每個字符集包含的字符個數(shù)不同,常見字符集名稱:ASCII字符集、GB2312字符集、BIG5字符集、 GB18030字符集、Unicode字符集等。這是百度百科給的解釋,反正就是字符集是一些字符的集合,字符集種類多,字符集中的字符數(shù)量也各不相同。計算機(jī)要準(zhǔn)確的處理各種字符集文字,需要進(jìn)行字符編碼,以便計算機(jī)能夠識別和存儲各種文字。

unicode

它的名字叫統(tǒng)一碼, 也叫萬國碼,符號數(shù)量在不斷增加,已超百萬 。

在創(chuàng)造Unicode之前,有數(shù)百種編碼系統(tǒng)。沒有一個編碼可以包含足夠的字符,從它的名字就可以看出這是一種所有符號的編碼,每一個符號都給予一個獨一無二的編碼,那么各個不同編碼導(dǎo)致的亂碼問題就會消失。

大多數(shù)計算機(jī)采用ASCII碼(美國標(biāo)準(zhǔn)信息交換碼),它是表示所有大小寫字母、數(shù)字、標(biāo)點符號和控制字符的7位編碼方案。統(tǒng)一碼(Unicode)包含ASCII碼,'u0000'到'u007F'對應(yīng)全部128個ACSII字符。

不禁讓我感慨,有實力的人才能制定標(biāo)準(zhǔn)。 Unicode 只是一個符號集,它只規(guī)定了符號的二進(jìn)制代碼,僅僅提供字符與編號間映射,卻沒有規(guī)定這個二進(jìn)制代碼應(yīng)該如何存儲。 我們知道英文字母的編號特別小,用一個字節(jié)就完全能夠表示,而unicode中的中文符號的編號就很大了,一個字節(jié)根本不行。 于是后面出現(xiàn)了unicode字符存儲的多種實現(xiàn)方式,比如UTF-8,UTF-16等。 UTF-8 是在互聯(lián)網(wǎng)上使用最廣的一種 Unicode 的實現(xiàn)方式。

內(nèi)碼和外碼

我們常說的java中的char占幾個字節(jié),應(yīng)該是java中內(nèi)碼中的char。

內(nèi)碼是指java運行時,其char和string在內(nèi)存中的編碼方式;外碼是程序與外部交互時外部使用的字符編碼,比如序列化技術(shù)。 外碼可以理解為:只要不是內(nèi)碼,那就是外碼。 要注意的是,源代碼編譯產(chǎn)生的目標(biāo)代碼文件(可執(zhí)行文件或class文件)中的編碼方式屬于外碼。 JVM中內(nèi)碼采用UTF16。 UTF-16 的 16 指的就是最小為 16 位一個單元,也即兩字節(jié)為一個單元。早期,UTF16采用固定長度2字節(jié)的方式編碼,兩個字節(jié)可以表示65536種符號(其實真正能表示要比這個少),足以表示當(dāng)時unicode中所有字符。但是隨著unicode中字符的增加,2個字節(jié)無法表示所有的字符,UTF16采用了2字節(jié)或4字節(jié)的方式來完成編碼。Java為應(yīng)對這種情況,考慮到向前兼容的要求,Java用一對char來表示那些需要4字節(jié)的字符。所以,java中的char是占用兩個字節(jié),只不過有些字符需要兩個char來表示。 這里就解釋了為什么有些字符需要兩個char來表示的問題。

另外:Java的class文件采用UTF8來存儲字符,也就是說,class中字符占1~6個字節(jié)。 Java序列化時,字符也采用UTF8編碼,占1~6個字符。

length()

那再來一個問題:Java中的一個字符的String.length()是多少?

看過前面的知識點不能再張嘴就來回答是1吧…… 寫個demo看一下:虎年就用虎來測試吧,tigerUTF對對應(yīng)unicode編碼表示。

         String tiger = "?";          String tigerUTF = "uD83DuDC05";          System.out.println(tigerUTF);          System.out.println(tiger.length());           System.out.println(tiger.codePointCount(0,tiger.length()));
登錄后復(fù)制

char類型要占幾個字節(jié)char類型要占幾個字節(jié)

可以得出調(diào)用String.length()得到的結(jié)果為2,表示的是stirng的char數(shù)組占UTF-16格式的2個代碼單元(即4個字節(jié)),而不是有多少個字符。 當(dāng)然我們想要獲取多少個字符,可以使用codePointCount方法來獲取。

贊(0)
分享到: 更多 (0)
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
福利在线小视频| 成人在线观看a| 一级特黄性色生活片| 99国产精品白浆在线观看免费| 国产一伦一伦一伦| 中文字幕国内自拍| 男女啪啪网站视频| 亚洲乱码国产一区三区| 国内外成人激情视频| 加勒比成人在线| 国产人妻777人伦精品hd| 色哟哟免费网站| 轻点好疼好大好爽视频| 妞干网视频在线观看| 国产无限制自拍| 国产中文字幕免费观看| 国内外成人免费激情视频| 成人久久久久久久久| 欧美日韩大尺度| 中文字幕中文在线| 欧美三级午夜理伦三级老人| ijzzijzzij亚洲大全| 你真棒插曲来救救我在线观看| 欧美亚洲黄色片| 丰满人妻中伦妇伦精品app| 免费看一级大黄情大片| 国产永久免费网站| 国产在线无码精品| 阿v天堂2017| 亚洲视频第二页| 青草全福视在线| 男女av免费观看| 日韩欧美色视频| 国产一级爱c视频| 五月天av在线播放| 国产资源在线视频| 久久久久久久久久毛片| 精品无码一区二区三区爱欲| 宅男噜噜噜66国产免费观看| ijzzijzzij亚洲大全| 久久精品免费一区二区| 中文字幕av导航| 亚洲中文字幕久久精品无码喷水| 日韩不卡的av| 国产精品亚洲二区在线观看| 国内自拍视频网| 成年人观看网站| 视色视频在线观看| 成人免费网站入口| 久久久久久久久久毛片| 久久av综合网| 黑人巨大国产9丨视频| 男人女人黄一级| 美女日批免费视频| 国产午夜精品视频一区二区三区| 亚洲欧美国产日韩综合| 日韩人妻精品无码一区二区三区| 国产又大又长又粗又黄| 亚洲精品成人在线播放| 熟女少妇精品一区二区| 国产a级一级片| 免费观看中文字幕| 91日韩精品视频| 欧美成人福利在线观看| 可以免费观看av毛片| 久久久免费视频网站| 国产精品999视频| 日韩国产小视频| 日本女人高潮视频| 免费看av软件| 最近中文字幕免费mv| 夜夜爽久久精品91| 久久av喷吹av高潮av| 欧美一级黄色录像片| 五月天色婷婷综合| 米仓穗香在线观看| 国产乱子伦精品无码专区| 777久久精品一区二区三区无码 | 国产911在线观看| 中文字幕第一页亚洲| 久久久99精品视频| 无码粉嫩虎白一线天在线观看| 国产精品无码免费专区午夜| 欧美一级欧美一级| 国产最新免费视频| 999精品视频在线| 色网站在线视频| 僵尸世界大战2 在线播放| 中国丰满人妻videoshd | www插插插无码视频网站| 免费毛片网站在线观看| 精品视频一区二区在线| 在线观看免费不卡av| 日本香蕉视频在线观看| 成人免费在线小视频| 亚洲欧美日韩综合网| 麻豆映画在线观看| 日本wwww视频| 欧美一级黄色录像片| 欧美黄网站在线观看| 亚洲欧美一区二区三区不卡| 久久综合九色综合88i| 91看片在线免费观看| 福利在线一区二区| 国产精品入口免费软件| 中文字幕精品在线播放| 亚洲性生活网站| 亚洲色欲久久久综合网东京热| mm1313亚洲国产精品无码试看| 精品久久免费观看| 日本成人在线免费视频| 日本黄色片一级片| 中文字幕在线观看日| 欧美啪啪免费视频| 9色视频在线观看| 岛国毛片在线播放| www日韩在线观看| 国产h视频在线播放| 桥本有菜av在线| 国产一级片自拍| 国产一区视频免费观看| 免费拍拍拍网站| 激情成人在线观看| 欧美特黄aaa| 邪恶网站在线观看| 青青在线视频观看| 国产原创中文在线观看| 成人国产在线看| 日韩精品福利片午夜免费观看| 男人的天堂最新网址| caoporn超碰97| 18岁视频在线观看| 成年人小视频网站| 可以在线看的黄色网址| av黄色在线网站| 中国丰满人妻videoshd| 国产视频九色蝌蚪| 国产一区二区网| 波多野结衣家庭教师视频| 自慰无码一区二区三区| jizzjizzxxxx| 久久久国产欧美| 99re精彩视频| 色姑娘综合天天| 国产成人永久免费视频| 成人免费观看cn| 激情六月丁香婷婷| 欧美一级特黄a| 天天综合五月天| 分分操这里只有精品| 中文字幕乱码人妻综合二区三区 | 精品人妻人人做人人爽| 老太脱裤让老头玩ⅹxxxx| 日韩欧美亚洲天堂| 日日噜噜夜夜狠狠| 日日干日日操日日射| 日韩一级片一区二区| 玩弄中年熟妇正在播放| 色乱码一区二区三区在线| gogogo免费高清日本写真| 欧美在线一区视频| 邪恶网站在线观看| 国产精品自拍合集| 中文字幕av专区| 日韩一级特黄毛片| 中国黄色片免费看| 国产高清www| 欧美女同在线观看| 国产妇女馒头高清泬20p多| 无遮挡又爽又刺激的视频 | 成年人午夜免费视频| 日韩一级理论片| 欧美国产日韩激情| 在线免费观看av网| 男人揉女人奶房视频60分| www激情五月| 黄色国产小视频| 97超碰在线人人| 红桃视频 国产| 超碰网在线观看| 男女激情免费视频| 男女激烈动态图| www.色欧美| 女人另类性混交zo| 日本a在线免费观看| 免费看黄色a级片| 天堂av手机在线| 少妇激情一区二区三区| www.av毛片| 国产人妻人伦精品| 91热视频在线观看| 污污网站免费看| mm1313亚洲国产精品无码试看| 激情五月宗合网| 婷婷无套内射影院| 男同互操gay射视频在线看| 肉色超薄丝袜脚交| 捷克做爰xxxⅹ性视频| 成人性生交免费看| 一区二区三区网址|