Преобразование строки в список символов в Java
Опубликовано: 4 Февраля, 2022
Для данной строки задача состоит в том, чтобы преобразовать ее в список символов в Java.
Примеры:
Ввод: String = "Компьютерщики" Вывод: [G, e, e, k, s] Ввод: String = "GeeksForGeeks" Вывод: [G, e, e, k, s, F, o, r, G, e, e, k, s]
Below are the various ways to do so:
- Naive Method
Approach:
- Get the String.
- Create an empty List of Characters.
- Add each character of String to the List.
- Return the List.
Below is the implementation of the above approach:
// Java program to illustrate// Converting a String to a List// of Charactersimportjava.util.*;// Java program to convert// a String to a List of CharactersclassGFG {// Function to convert String// to List of CharacterspublicstaticList<Character>convertStringToCharList(String str){// Create an empty List of characterList<Character> chars =newArrayList<>();// For each character in the String// add it to the Listfor(charch : str.toCharArray()) {chars.add(ch);}// return the Listreturnchars;}// Driver codepublicstaticvoidmain(String[] args){// Get the String to be convertedString str ="Geek";// Get the List of CharacterList<Character>chars = convertStringToCharList(str);// Print the list of charactersSystem.out.println(chars);}}Output:[G, e, e, k]
- Using Java 8 Stream:
Approach:
- Get the String.
- Create a List of Characters.
- Convert to String to IntStream using chars() method.
- Convert IntStream to Stream
using mapToObj() method. - Collect the elements as a List Of Characters using collect()
- Return the List.
Below is the implementation of the above approach:
// Java program to illustrate// Converting a String to a List// of Charactersimportjava.util.*;importjava.util.stream.Collectors;// Java program to convert// a String to a List of CharactersclassGFG {// Function to convert String// to List of CharacterspublicstaticList<Character>convertStringToCharList(String str){// Create an empty List of characterList<Character> chars = str// Convert to String to IntStream.chars()// Convert IntStream to Stream<Character>.mapToObj(e -> (char)e)// Collect the elements as a List Of Characters.collect(Collectors.toList());// return the Listreturnchars;}// Driver codepublicstaticvoidmain(String[] args){// Get the String to be convertedString str ="Geek";// Get the List of CharacterList<Character>chars = convertStringToCharList(str);// Print the list of charactersSystem.out.println(chars);}}Output:[G, e, e, k]
- Using Java 8 Stream:
Approach:
- Get the String.
- Use the AbstractList interface to convert the String into List of Character
- Return the List.
Below is the implementation of the above approach:
importjava.util.*;// Java program to convert// a String to a List of CharactersclassGFG {// Function to convert String// to List of CharacterspublicstaticList<Character>convertStringToCharList(String str){returnnewAbstractList<Character>() {@OverridepublicCharacter get(intindex){returnstr.charAt(index);}@Overridepublicintsize(){returnstr.length();}};}// Driver codepublicstaticvoidmain(String[] args){// Get the String to be convertedString str ="Geek";// Get the List of CharacterList<Character>chars = convertStringToCharList(str);// Print the list of charactersSystem.out.println(chars);}}Output:[G, e, e, k]
Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course.