首页 > 代码库 > 一个 -100.01 的double 在内存中怎么存储的. 一个中文String 在内存中占多少直接 utf-8 / GBK

一个 -100.01 的double 在内存中怎么存储的. 一个中文String 在内存中占多少直接 utf-8 / GBK

一、-100.01 的double 在内存中怎么存储的

double双精度数据类型存储格式
IEEE 双精度格式为8字节64位,由三个字段组成:52 位小数 f ; 11 位偏置指数 e ;以及 1 位符号 s。
这些字段连续存储在两个 32 位字中

技术分享

 

二、一个中文String 在内存中占多少直接 utf-8 / GBK

【腾讯实习生问到这个问题,当时还天真的回答unicode字符集和16位,哎...】

GBK:1个ASCII码占1个字节,而1个汉字编码占2个字节

UTF:ASCII对应的字符在UTF-8下占1个字符,西方文字(希腊文字)占2个字符,中文占用3个字节数,还有平面符号占4个字节。

 

一个 -100.01 的double 在内存中怎么存储的. 一个中文String 在内存中占多少直接 utf-8 / GBK