如何将Scanner以", "为分隔符输入的单词存储到数组中
嘿,很高兴你已经解决了这个问题!不过我还是把实现这个需求的常规方法整理出来,方便其他遇到同样问题的开发者参考~
用Scanner获取逗号分隔的单词并拆分存入数组
核心思路很清晰:通过Scanner读取整行输入,再用字符串拆分方法把内容按指定分隔符切分成数组,之后就能用这个数组去实例化对象啦。
完整代码示例
import java.util.Scanner; public class WordInputHandler { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 提示用户输入格式 System.out.println("请输入用\", \"(逗号加空格)分隔的单词:"); String userInput = scanner.nextLine(); // 按照指定分隔符拆分字符串,得到单词数组 String[] wordArray = userInput.split(", "); // 可选:验证拆分结果 System.out.println("拆分后的单词数组内容:"); for (String word : wordArray) { System.out.println("- " + word); } // 这里就可以把数组传入构造方法实例化对象了 // 比如:YourCustomClass instance = new YourCustomClass(wordArray); scanner.close(); } }
实用小提示
- 如果担心用户输入的分隔符不规范(比如只有逗号没空格,或者逗号前后有多个空格),可以把拆分规则改成
userInput.split(",\\s*"),这样能匹配逗号后面任意数量的空格 - 如果需要处理空输入或者末尾多余分隔符的情况,可以额外过滤数组里的空字符串,比如用流处理:
String[] filteredArray = Arrays.stream(wordArray) .filter(word -> !word.isEmpty()) .toArray(String[]::new);
看到你说已经解决问题真的很开心!希望上面的内容能帮到其他有同样需求的开发者 😊
内容的提问来源于stack exchange,提问作者ferics
相关产品推荐
相关产品推荐

