Split strings keeping all trailing empty elements

后端 未结 3 1671
长发绾君心
长发绾君心 2021-01-25 07:28

I am relatively new to java programming. How would you split following lines of Strings separated by semicolons?

String; String; String; String, String; String;;         


        
3条回答
  •  感动是毒
    2021-01-25 07:56

    Since you stated that you want to contain the spaces, only split on the ; and want to keep 8 arguments for your constructor, we are going to use the split with a limit method.

    String.split(String,int)

    Example:

    String in = "String; String; String; String, String; String;;String;";
    String[] s1 = in.split(";");
    

    Gives:

    ["String"," String"," String, String"," String"," String","","String"]
    

    What is only 7 in length and will fail your constructor.


    String[] s = in.split(";",8);
    

    Gives:

    ["String"," String"," String"," String, String"," String","","String",""]`
    

    What is 8 in length and will work.


    You can then address your constructor using:

    YourObject obj = new YourObject(s[0],s[1],s[2],s[3],s[4],s[5],s[6],s[7]);
    

提交回复
热议问题