首页 > 解决方案 > 用封闭的字符串和空格分割字符串

问题描述

我尝试使用 '''String.split''' 拆分,但我无法将内容保留在双引号中。这是我的代码

    import java.util.*;


    public class L8_Task2{
    public static void main(String[] args){
        ArrayList<String> arr_list = new ArrayList<String>();
        Scanner scan = new Scanner(System.in);
        System.out.print("\nEnter the arguments:");
        String s = scan.nextLine();
        arr_list = splitstring(s);
        for(String str: arr_list){
            System.out.println(str);
        }
        
    }
    
    public static ArrayList<String> splitstring(String s){
        ArrayList<String> arr_list = new ArrayList<String>();
        String[] str_arr=s.split("\\s|\"");
        
        for(String str: str_arr){
            arr_list.add(str);
        }
        
        return arr_list;
    }


}

但是输出应该是这样的

a 
friend
good morning 
good afternoon
b

我无法将双引号中的内容保留在同一行中 我需要帮助

标签: javasplit

解决方案


您可以在拆分后格式化输出并将引号添加到每个字符串,如下所示:

for(String str: arr_list){
        System.out.println(String.format("\"%s\"", str));
}

推荐阅读