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

Java中将用户输入短语按单词拆分生成字符二维数组的实现方法

实现代码

你可以直接修改原有代码如下:

import java.util.Scanner;
public class eldertonguetranslator
{
    public static void main(String[] args)
    {
        Scanner sc = new Scanner(System.in);
        String inputtext;
        System.out.println("Enter you text: ");
        inputtext = sc.nextLine();
        
        // 按空白字符分割输入字符串,得到单词数组,兼容多空格分隔场景
        String[] words = inputtext.trim().split("\\s+");
        // 初始化二维字符数组,第一维长度和单词数量一致
        char[][] splittext = new char[words.length][];
        // 遍历所有单词,逐个转换为字符数组存入二维数组
        for (int i = 0; i < words.length; i++) {
            splittext[i] = words[i].toCharArray();
        }
        
        // 测试打印代码,可根据实际需求删除
        for (char[] word : splittext) {
            System.out.print("{");
            for (int i = 0; i < word.length; i++) {
                System.out.print(word[i]);
                if (i != word.length - 1) {
                    System.out.print(", ");
                }
            }
            System.out.println("}");
        }
    }
}

关键逻辑说明

  • 先用trim()去除输入字符串首尾的空白字符,避免分割出无效空字符串
  • split("\\s+")可以匹配任意数量的空白字符作为分隔符,无论单词之间是单个空格、多个空格还是制表符,都能正确拆分
  • 直接调用toCharArray()方法即可快速将单个单词转为字符数组,无需手动遍历拆分字符,自动适配不同单词的长度
  • Java支持不规则二维数组,第二维不需要提前统一指定长度,每个元素可以是长度不同的一维字符数组,刚好适配长度不同的单词需求

内容的提问来源于stack exchange,提问作者Jasper1378

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 21:54:04