内码外码占用字节数不同,要区分对待:
1.java中内码(运行内存)中的char使用UTF16的方式编码,一个char占用两个字节,但是某些字符需要两个char来表示。所以,一个字符会占用2个或4个字节。
2.java中外码中char使用UTF8的方式编码,一个字符占用1~6个字节。
3.UTF16编码中,英文字符占两个字节;绝大多数汉字(尤其是常用汉字)占用两个字节,个别汉字(在后期加入unicode编码的汉字,一般是极少用到的生僻字)占用四个字节。
4.UTF8编码中,英文字符占用一个字节;绝大多数汉字占用三个字节,个别汉字占用四个字节。
统计字符长度需注意,如emoji表情算2个长度的字符,可使用codePointCount方法统计。
用一张图表示就能很清楚的说明了
================================================================
推荐一个公众号:外卖小冰糖
领券下单更便宜,一起薅平台羊毛,所得俑金对半分,超过0.3元即可返回无套路。
他主要有以下几点优势:
1.安静:不会每天推送消息打扰人。
2.返俑:你每下一个单都会获得一定的俑金,每单能拿到0.5-1元这样的金额,每天晚上8点左右自动通过微信零钱转给你,首次下单额外补贴0.5元俑金。
3.公众号内部提供一些小游戏,无聊的时候可以玩一玩,如:人生重开变态版,2048,飞机滑行等小游戏。
4.提供一些工具类的功能,如查看每日天气,每日英语,二维码生成,短链生成等。
希望能帮助到大家,祝大家生活愉快!!