题解 | #参数解析#

参数解析

https://www.nowcoder.com/practice/668603dc307e4ef4bb07bcd0615ea677

思路:灵活运用String.repalce/replaceAll/split方法

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String input = scan.nextLine();

        List<String> list = new ArrayList<>();
        //判断是否有引号
        if (input.contains("\"")) {
            list=result(input);
        } else {
            //若不包含引号
            String[] inputs = input.split(" ");
            for (String item : inputs) {
                list.add(item);
            }
        }

        //输出
        System.out.println(list.size());
        for(String item:list){
            System.out.println(item);
        }



    }

    //若包含引号
    public static ArrayList<String> result(String input) {
        ArrayList<String> list = new ArrayList<>();
        //先利用"划分数组,不带引号的字符串一定是以空格开头或结尾
        String[] inputs = input.split("\"");

        //对以空格开头或结尾的字符串,利用" " 划分,
        for (String item : inputs) {
            if (item.startsWith(" ") || item.endsWith(" ")) {
                //使用空格划分,并分行输出各元素
                String[] items = item.split(" ");
                for (String item2 : items) {
                    if (!item2.equals("")) list.add(item2);
                }
            } else {
                list.add(item);
            }
        }
        return list;
    }

}
全部评论

相关推荐

不想投了,不想面了,不想找了感觉自己像个小丑
用微笑面对困难:不是你去大学生就业平台看看啊,boss很多就是冲kpi的
点赞 评论 收藏
分享
05-12 22:16
已编辑
北京邮电大学 研发工程师
牛客302360988号:0offer+1 滴滴都不给我面 佬没投鹅吗,鹅应该很喜欢北邮吧
投递美团等公司7个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务