题解 | #参数解析#

参数解析

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

import java.util.*;

/**
暴力解法,全部遍历
 */
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            String s = in.nextLine();
            char[] arr = s.toCharArray();
            int count = 0;
            boolean flag = false; //引号标记
            int i = 0;
            int j = 0;
            List<String> list = new ArrayList<>();
            while (j < arr.length) {
                if (arr[j] == '"') {
                    flag = !flag;
                }

                if (arr[j] == ' ' && flag == false) {
                    count++;
                    if (arr[i] == '"') {
                        list.add(s.substring(i + 1, j - 1));
                    } else {
                        list.add(s.substring(i, j));

                    }
                    i = j + 1;
                }
                j++;
            }
            count++;
            if (arr[i] == '"') {
                list.add(s.substring(i + 1, j - 1));
            } else {
                list.add(s.substring(i, j));

            }

            System.out.println(count);
            for (String str : list) {
                System.out.println(str);
            }
        }
    }
}

全部评论

相关推荐

01-14 11:51
已编辑
门头沟学院 FPGA工程师
华为 ict计算硬件工程师 薪资13a
点赞 评论 收藏
分享
2024-11-28 21:33
广东工业大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务