如何将 String("dog") 拆分为 Arraylist ['d', 'o', 'g']?

ŁeZ*_*ard 2 java string arraylist converters

我有一个输入String,我希望它的字母在ArrayList. 像"abc"['a', 'b', 'c']

我试过split()方法,但它的错误是 Cannot resolve method 'asList(java.lang.String[])'

userInput = scanner.next();
inputLetters = new ArrayList<Character>(Arrays.<Character>asList(userInput.split("")));
Run Code Online (Sandbox Code Playgroud)

我有 java 13 所以这应该有用

Era*_*ran 5

当你传递一个String[]to 时Arrays.asList(),你会得到一个List<String>,而不是一个List<Character>

您可以将您的转换List<String>为 aList<Character>如下:

List<Character> inputLetters = Arrays.asList(userInput.split(""))
                                     .stream()
                                     .map(s -> s.charAt(0))
                                     .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

另一种获得 的方法List<Character>

List<Character> inputLetters = userInput.chars()
                                        .mapToObj(i -> (char)i)
                                        .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

当然,如果您不介意使用 achar[]而不是 a List<Character>,只需使用userInput.toCharArray().