题解 | #参数解析#
参数解析
https://www.nowcoder.com/practice/668603dc307e4ef4bb07bcd0615ea677
import java.util.*; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNextLine()) { String s = in.nextLine(); List<String> list = resolve(s); System.out.println(list.size()); for(String i : list) { System.out.println(i); } } } public static List<String> resolve(String s) { List<String> list = new ArrayList<>(); boolean open = false; StringBuilder b = new StringBuilder(); int n = s.length(); for(int i = 0; i < n; i++) { if(s.charAt(i) == '\"') { if(open) { list.add(b.toString()); open = false; b = new StringBuilder(); i++; } else { open = true; } } else { if(s.charAt(i) == ' ') { if(open) { b.append(s.charAt(i)); } else { list.add(b.toString()); b = new StringBuilder(); } } else { b.append(s.charAt(i)); } } } if(b.length() > 0) { list.add(b.toString()); } return list; } }