How to convert a String into an array of Strings containing one character each

前端 未结 6 906
攒了一身酷
攒了一身酷 2020-12-15 12:13

I have a small problem here.I need to convert a string read from console into each character of string. For example string: \"aabbab\" I want to this string into array of st

6条回答
  •  借酒劲吻你
    2020-12-15 12:47

    If by array of String you mean array of char:

    public class Test
    {
        public static void main(String[] args)
        {
            String test = "aabbab ";
            char[] t = test.toCharArray();
    
            for(char c : t)
                System.out.println(c);    
    
            System.out.println("The end!");    
        }
    }  
    

    If not, the String.split() function could transform a String into an array of String

    See those String.split examples

    /* String to split. */
    String str = "one-two-three";
    String[] temp;
    
    /* delimiter */
    String delimiter = "-";
    /* given string will be split by the argument delimiter provided. */
    temp = str.split(delimiter);
    /* print substrings */
    for(int i =0; i < temp.length ; i++)
      System.out.println(temp[i]);
    

    The input.split("(?!^)") proposed by Joachim in his answer is based on:

    • a '?!' zero-width negative lookahead (see Lookaround)
    • the caret '^' as an Anchor to match the start of the string the regex pattern is applied to

    Any character which is not the first will be split. An empty string will not be split but return an empty array.

提交回复
热议问题