字符串是不可变的,可通过以下方法转换为数组:使用 split() 方法根据分隔符拆分字符串。使用 tochararray() 方法转换为字符数组。使用 stream api 将字符串的每个字符映射到一个 character 对象。使用正则表达式根据复杂模式拆分字符串。
如何将字符串转换为数组
字符串是不可变的字符序列,而数组是元素的集合。要将字符串转换为数组,可以使用以下方法:
1. 使用 split() 方法
split() 方法将字符串拆分成一个数组,其中每个元素对应字符串中的一个子串。您可以使用分隔符(如空格、逗号或制表符)来指定如何拆分字符串。
立即学习“Java免费学习笔记(深入)”;
String str = "My name is John Doe"; String[] arr = str.split(" "); // 根据空格拆分
2. 使用 toCharArray() 方法
toCharArray() 方法将字符串转换为一个字符数组,其中每个元素对应字符串中的一个字符。
String str = "My name is John Doe"; char[] arr = str.toCharArray();
3. 使用 Stream API
Stream API 提供了更高级的方法来将字符串转换为数组。您可以使用 mapToObj() 方法将字符串的每个字符映射到一个 Character 对象,然后将其收集到一个数组中。
import Java.util.stream.Collectors; String str = "My name is John Doe"; Character[] arr = str.chars() .mapToObj(c -> (char) c) .toArray(Character[]::new);
4. 使用正则表达式
如果您需要根据复杂的模式将字符串拆分,可以使用正则表达式。Pattern.split() 方法可以根据正则表达式拆分字符串。
import java.util.regex.Pattern; String str = "My name is John Doe"; String[] arr = Pattern.compile("s+").split(str); // 根据多个空格拆分