字节、字符、字符编码

本文介绍了字符编码的概念,如ASCII、Unicode、UTF-8等,以及如何在Java中使用String类的getBytes()方法进行字符转字节的编码操作,以及使用构造方法进行字节解码为字符串的过程。
摘要由CSDN通过智能技术生成

字节:存储的单位
字符:文字符号(如字母、数字、标点符号),由多个字节组成。
一个字节可区别256(2^8)个位,一个中文字符占三个字节。
字符编码:为字符集中的每一个字符规定一串对应二进制数。比如,在ASCII码中,大写的字母A是01000001

每个字节是8比特。
其中第1位用于表示正负, 第一位0表示是正数,第一位是1表示负数。
0000 0000 到 0111 1111表示正数,0到127。
1000 0000 到 1111 1111表示负数,0到-128。其中,1000 0000定义为-128。

常见的字符编码方式有:ASCII、 Unicode、UTF-8、GBK(简、繁体字融于一库)、GB2312(简体中文字符集)、Big5(繁体中文字符集)等。

总结:a,字符,占1个字节,字符编码是01100001。

编码

字符转为字节
String类的方法
public byte[] getBytes():使用平台默认的编码方式utf-8对字符串编码
public byte[] getBytes(String charsetName):使用指定的编码方式对字符串编码

解码

字节转为字符
String类的构造方法
public String(byte[] bytes):使用平台默认的编码方式utf-8解码为字符串
public String(byte[] bytes, String charsetName):使用指定的编码方式解码为字符串

String s = "ab,你好!";

//编码
byte[] bytes = s.getBytes();
System.out.println(Arrays.toString(bytes));//[97, 98, 44, -28, -67, -96, -27, -91, -67, -17, -68, -127]

//解码
String s1 = new String(bytes);
System.out.println(s1);//ab,你好!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值