Java基础之字符串编码知识点总结
什么是字符串编码
字符串编码是指将字符集中的字符编码成指定格式的二进制编码,以便于计算机存储、传输和显示。在Java中,常用的字符串编码有ASCII、ISO-8859-1、UTF-8等。
ASCII编码
ASCII编码是7位编码,最高位为0,能表示128个字符。常用于英语、数字和符号等字符集的表示。
示例1:
char ch = 'A';
int ascii = (int)ch;
System.out.println(ascii); // 输出65
上述代码将字符'A'的ASCII码值赋给变量ascii并输出,其结果为65。
ISO-8859-1编码
ISO-8859-1编码是8位编码,最高位为0,能表示256个字符。它是ASCII编码的扩展,包括了西欧地区常用的字符。
示例2:
String str = "你好";
try {
byte[] iso = str.getBytes("ISO-8859-1");
System.out.println(Arrays.toString(iso)); // 输出[-28, -67, -96, -27, -91, -67]
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
上述代码将字符串"你好"按照ISO-8859-1编码转换成字节数组,并输出其结果。
UTF编码
UTF是Unicode Transformation Format的缩写,它将Unicode字符集中的字符编码成具有可变长度的二进制编码,以便于在计算机中存储和传输。UTF编码常用的有UTF-8、UTF-16和UTF-32三种。
UTF-8编码
UTF-8是一种变长编码,最少用8位(1字节)来表示一个字符,最多可以用32位(4字节)来表示一个字符。它是Unicode标准的一种实现方式。
示例3:
String str = "你好";
try {
byte[] utf8 = str.getBytes("UTF-8");
System.out.println(Arrays.toString(utf8)); // 输出[-28, -67, -96, -26, -106, -121]
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
上述代码将字符串"你好"按照UTF-8编码转换成字节数组,并输出其结果。
UTF-16编码
UTF-16是一种固定长度编码,用16位(2字节)来表示一个字符。在Java中,字符串默认采用UTF-16编码。
总结
字符串编码在Java中是非常重要的知识点,特别是在处理中文字符时更为重要。以上介绍了常用的ASCII、ISO-8859-1和UTF编码及其表现形式和转换方式,希望能对读者有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java基础之字符串编码知识点总结 - Python技术站