Java中字符数组与字符串的相互转换方法及示例代码分析大全解析
在 Java 中,字符数组与字符串之间的相互转换是常见的操作,以下是详细的转换方法及示例代码分析:
字符数组转字符串
在 Java 中,可以使用 String 类的构造函数或 valueOf() 方法将字符数组转换为字符串。
使用 String 类的构造函数
String 类提供了一个接受字符数组作为参数的构造函数,该构造函数将字符数组转换为字符串。
示例代码:
public class CharArrayToStringExample { public static void main(String[] args) { // 创建字符数组 char[] charArray = {'H', 'e', 'l', 'l', 'o'}; // 使用 String 类的构造函数将字符数组转换为字符串 String str = new String(charArray); System.out.println(str); } }
使用 valueOf() 方法
String 类还提供了一个 valueOf() 方法,该方法将字符数组转换为字符串。
示例代码:
public class CharArrayToStringExample2 { public static void main(String[] args) { // 创建字符数组 char[] charArray = {'H', 'e', 'l', 'l', 'o'}; // 使用 valueOf() 方法将字符数组转换为字符串 String str = String.valueOf(charArray); System.out.println(str); } }
字符串转字符数组
在 Java 中,可以使用 String 类的 toCharArray() 方法或 split() 方法将字符串转换为字符数组。
使用 toCharArray() 方法
String 类中的 toCharArray() 方法将字符串转换为字符数组。
示例代码:
public class StringToCharArrayExample { public static void main(String[] args) { // 创建字符串 String str = "123abc"; // 使用 toCharArray() 方法将字符串转换为字符数组 char[] arr = str.toCharArray(); // 遍历字符数组并输出每个字符 for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } } }
使用 split() 方法
java.lang 包中有 String.split() 方法,通常用 split() 分割字符串,返回的是一个数组。
示例代码:
public class StringToCharArrayExample2 { public static void main(String[] args) { // 创建字符串 String str = "123abc"; // 使用 split() 方法将字符串分割为字符串数组 String[] arr = str.split(" "); // 遍历字符串数组并输出每个元素 for (int i = 0; i < arr.length; i++) { System.out.print(arr[i]); } } }
使用 split() 方法时需要注意:如果用“.”或“|”作为分隔的话,必须是如下写法,String.split("\\.") 或 String.split("\\|"),这样才能正确的分隔开,不能用 String.split(".") 或 String.split("|")。如果在一个字符串中有多个分隔符,可以用“|”作为连字符。如果想在串中使用“\”字符,则也需要转义。
此外,还有其他一些相关方法:
字符数组转化为字符串还可以使用 String.copyValueOf(charArray) 函数。示例代码如下:
public class CharArrayToStringExample3 { public static void main(String[] args) { // 创建字符数组 char[] array = {'A', 'B', 'C'}; // 使用 copyValueOf() 方法将字符数组转换为字符串 String string = String.copyValueOf(array); System.out.println(string); } }
如果要将字符串转换为 byte 数组,可以直接使用 getBytes 方法。示例代码如下:
public class StringToByteArrayExample { public static void main(String[] args) { // 创建字符串 String str = "123abc"; // 使用 getBytes() 方法将字符串转换为 byte 数组 byte[] arr = str.getBytes(); } }