From 54ea3ca515b0082a4daa59dd5f15537f8ed268bb Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Sat, 21 Mar 2026 10:55:10 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=9B=E9=98=B6day09-=E5=AD=97=E8=8A=82?= =?UTF-8?q?=E6=95=B0=E7=BB=84=E5=92=8C=E5=AD=97=E7=AC=A6=E4=B8=B2=E7=9A=84?= =?UTF-8?q?=E7=9B=B8=E4=BA=92=E8=BD=AC=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- javaSE-day09/src/com/inmind/io01/Demo4.java | 40 +++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 javaSE-day09/src/com/inmind/io01/Demo4.java diff --git a/javaSE-day09/src/com/inmind/io01/Demo4.java b/javaSE-day09/src/com/inmind/io01/Demo4.java new file mode 100644 index 0000000..041f387 --- /dev/null +++ b/javaSE-day09/src/com/inmind/io01/Demo4.java @@ -0,0 +1,40 @@ +package com.inmind.io01; + +import java.util.Arrays; + +/* +字节数组和字符串的相互转换 + + 字节数组--->字符串:构造方法 + String(byte[] bytes) 通过使用平台的默认字符集解码指定的字节数组来构造新的 String 。 + String(byte[] bytes, int offset, int length) 通过使用平台的默认字符集解码指定的字节子阵列来构造新的 String + 字符串--->字节数组:成员方法 + byte[] getBytes() 使用平台的默认字符集将该 String编码为一系列字节,将结果存储到新的字节数组中。 + + 注意: + 1.UTF-8:字母和数字都只占1个字节,而一个中文占3个字节 + 2.GBK:字母和数字都只占1个字节,而一个中文占2个字节 + */ +public class Demo4 { + public static void main(String[] args) { + String str = "abc"; + //字符串--->字节数组 + byte[] bytes = str.getBytes(); + System.out.println(bytes.length); + System.out.println(Arrays.toString(bytes)); + + String str1 = "中国"; + byte[] bytes1 = str1.getBytes(); + System.out.println(bytes1.length); + System.out.println(Arrays.toString(bytes1)); + + //字节数组--->字符串 + String s1 = new String(bytes); + System.out.println(s1); + String s2 = new String(bytes1); + System.out.println(s2); + + String s3 = new String(bytes1, 3, 3); + System.out.println(s3); + } +}