From fcc90e03828a1380002740cf85ea681ecdddfcd7 Mon Sep 17 00:00:00 2001 From: Mo Helmy <135069400+BenHelmyBen@users.noreply.github.com> Date: Thu, 14 Dec 2023 01:08:38 +0200 Subject: [PATCH] This commit is related to BAEL-7341 (#15410) This commit aims to add a test class "StringToCharListUnitTest" that suggests several ways to convert a string into a list of charachters. --- .../StringToCharListUnitTest.java | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 core-java-modules/core-java-string-conversions-3/src/test/java/com/baeldung/stringtocharlist/StringToCharListUnitTest.java diff --git a/core-java-modules/core-java-string-conversions-3/src/test/java/com/baeldung/stringtocharlist/StringToCharListUnitTest.java b/core-java-modules/core-java-string-conversions-3/src/test/java/com/baeldung/stringtocharlist/StringToCharListUnitTest.java new file mode 100644 index 0000000000..1cdbfb9df9 --- /dev/null +++ b/core-java-modules/core-java-string-conversions-3/src/test/java/com/baeldung/stringtocharlist/StringToCharListUnitTest.java @@ -0,0 +1,62 @@ +package com.baeldung.stringtocharlist; + +import org.junit.jupiter.api.Test; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import com.google.common.collect.Lists; + + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class StringToCharListUnitTest { + public String inputString = "Convert a String to a List of Characters in Java"; + + @Test + public void givenString_whenUsingToCharArray_thenConvertToCharList() { + char[] charArray = inputString.toCharArray(); + + List charList = new ArrayList<>(); + for (char c : charArray) { + charList.add(c); + } + + assertEquals(inputString.length(), charList.size()); + } + + @Test + public void givenString_whenUsingMapToObj_thenConvertToCharList() { + List charList = inputString.chars() + .mapToObj(c -> (char) c) + .toList(); + + assertEquals(inputString.length(), charList.size()); + } + + @Test + public void givenString_whenUsingSplit_thenConvertToStringList() { + String[] charArray = inputString.split(""); + + List charList = Arrays.asList(charArray); + + assertEquals(inputString.length(), charList.size()); + } + + @Test + public void givenString_whenUsingGuavaLists_thenConvertToCharList() { + List charList = Lists.charactersOf(inputString); + + assertEquals(inputString.length(), charList.size()); + } + + @Test + public void givenString_whenUsingCodePoints_thenConvertToCharList() { + List charList = inputString.codePoints() + .mapToObj(c -> (char) c) + .toList(); + + assertEquals(inputString.length(), charList.size()); + } +}