如何在Java字符(16位)中存储UTF-8字符(8位)时避免内存浪费.二合
我恐怕对一个相当过度饱和的话题的细节有疑问,我搜索了很多,但是找不到明确的答案 – 这个特别明显的 – 重要的,问题:
使用UTF-8将byte []转换为String时,每个字节(8位)变为由UTF-8编码的8位字符,但每个UTF-8字符在java中保存为16位字符.那是对的吗? 有没有一些技巧有一个8位的伪字符串?这实际上会减少内存消耗吗? 重新制定的问题:是否有更智能的方法将字节转换为字符串? 其他用例信息: 我正在调整Jedis(NoSQL Redis的java客户端)作为hypergraphDB的“原始存储层”.因此,jedis是另一个“数据库”的数据库. 现在我想知道:如果我不得不一直互换byte []和String,数据量从非常小到可能非常大,那么每个8位字符在java中传递为16位并不会浪费大量内存? 解决方法
是的,请确保您拥有最新版本的Java. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |