Base64
二进制 —> ASCII 纯文本字符串
用64个字符 A-Z,a-z,0-9,+,/。还有一个 = 用来表示末尾补过 0.
binary(bytes) 按照 6 bit 切分 -> 获取对应的 index 数,如 010010 按照上方表为 18 位,也就是 S
当然如果不够6则补0,最后加一个 = 表示这里补充过
然后再用 char 在 ASCII 中对应 index 数反推 binary,如这里的 S 对应 083
所以 Base64会带来比原本数据大 33~36% 的体积
HEX is just another representation of bytes. The following three are equal
10 (Decimal value 10)
0xA (Hex value 10)
00001010 (Binary value 10)
binary 二进制,ones and zeros(一堆01)
bit 位 (一个0或1)
byte 字节 (8个0或1)
1字节(Byte)=8位(bit)
bit 是计算机存储的基本单元,byte是一个有意义的存储内容,binary 则表示一串二进制数据。
常见的优化
缓存:Map进行 a -> b 对照关系的缓存
预先扩容:可变容器,如vector,String可以预先给出大于等于的空间,防止后续计算后再扩容