在Java中将字符串转换为字符列表
给定一个字符串,任务是将其转换为Java中的字符列表。
例子:
Input: String = "Geeks"
Output: [G, e, e, k, s]
Input: String = "GeeksForGeeks"
Output: [G, e, e, k, s, F, o, r, G, e, e, k, s]
以下是执行此操作的各种方法:
- 朴素的方法
方法:
- 获取字符串。
- 创建一个空的字符列表。
- 将字符串的每个字符添加到列表中。
- 返回列表。
下面是上述方法的实现:
// Java program to illustrate // Converting a String to a List // of Characters import java.util.*; // Java program to convert // a String to a List of Characters class GFG { // Function to convert String // to List of Characters public static List
convertStringToCharList(String str) { // Create an empty List of character List chars = new ArrayList<>(); // For each character in the String // add it to the List for (char ch : str.toCharArray()) { chars.add(ch); } // return the List return chars; } // Driver code public static void main(String[] args) { // Get the String to be converted String str = "Geek"; // Get the List of Character List chars = convertStringToCharList(str); // Print the list of characters System.out.println(chars); } } 输出:[G, e, e, k]
- 使用Java 8 流:
方法:
- 获取字符串。
- 创建一个字符列表。
- 使用 chars() 方法将 String 转换为 IntStream。
- 将 IntStream 转换为 Stream
使用 mapToObj() 方法。 - 使用 collect() 将元素收集为字符列表
- 返回列表。
下面是上述方法的实现:
// Java program to illustrate // Converting a String to a List // of Characters import java.util.*; import java.util.stream.Collectors; // Java program to convert // a String to a List of Characters class GFG { // Function to convert String // to List of Characters public static List
convertStringToCharList(String str) { // Create an empty List of character List chars = str // Convert to String to IntStream .chars() // Convert IntStream to Stream .mapToObj(e -> (char)e) // Collect the elements as a List Of Characters .collect(Collectors.toList()); // return the List return chars; } // Driver code public static void main(String[] args) { // Get the String to be converted String str = "Geek"; // Get the List of Character List chars = convertStringToCharList(str); // Print the list of characters System.out.println(chars); } } 输出:[G, e, e, k]
- 使用Java 8 流:
方法:
- 获取字符串。
- 使用 AbstractList 接口将字符串转换为字符列表
- 返回列表。
下面是上述方法的实现:
import java.util.*; // Java program to convert // a String to a List of Characters class GFG { // Function to convert String // to List of Characters public static List
convertStringToCharList(String str) { return new AbstractList () { @Override public Character get(int index) { return str.charAt(index); } @Override public int size() { return str.length(); } }; } // Driver code public static void main(String[] args) { // Get the String to be converted String str = "Geek"; // Get the List of Character List chars = convertStringToCharList(str); // Print the list of characters System.out.println(chars); } } 输出:[G, e, e, k]