You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Java Scanner程序中用split方法将字符串转为数组?

如何用split()将字符串转为ArrayList

嗨,我来帮你搞定这个字符串转ArrayList的需求!你已经找对方向了——split()方法就是核心,咱们一步步来实现你要的功能。

第一步:理解split()的正确用法

split()方法能把字符串按指定规则拆分成字符串数组。针对你按单词分割的需求,推荐用**split("\\s+")**:

  • 它会按任意数量的空白字符(包括单个空格、连续空格、制表符)分割,比单纯的split(" ")更健壮,能处理用户输入时不小心打多空格的情况
  • 如果用split(" "),遇到连续空格会生成空字符串元素,反而添乱

第二步:把数组转成可修改的ArrayList

split()返回的是String[]数组,咱们可以用Arrays.asList()把它转成列表,但这个方法返回的列表是固定大小的(不能添加/删除元素)。如果需要可灵活修改的ArrayList,记得用new ArrayList<>()把它包装起来。

第三步:把代码加到你的程序里

在你代码的// string to arrays注释下方,添加这段代码即可:

// 按任意空白字符分割字符串为数组
String[] wordsArray = line.split("\\s+");
// 将数组转换为可修改的ArrayList
ArrayList<String> wordsList = new ArrayList<>(Arrays.asList(wordsArray));
// 输出转换结果验证
System.out.println("转换后的ArrayList:" + wordsList);

额外小提示

如果你的输入里带标点(比如逗号、句号),可以调整split()的正则表达式,比如split("[\\s,.]+"),就能同时把空格和标点作为分隔符,避免单词后面带标点的情况。

验证效果

当你输入This is a good class with JAVA时,程序会输出:

转换后的ArrayList:[This, is, a, good, class, with, JAVA]

完全符合你想要的结果~

内容的提问来源于stack exchange,提问作者alessi.gg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 17:07:51