Java控制台输入n行m列的字符数组

在Java编程中,有时候需要从控制台输入一个n行m列的字符数组,这种需求在处理一些矩阵操作或者文本处理时会比较常见。本文将介绍如何在Java中实现这样的功能,并提供代码示例来帮助读者更好地理解。

实现思路

要实现从控制台输入n行m列的字符数组,可以分为以下几个步骤:

  1. 通过控制台输入获取用户输入的行数n和列数m;
  2. 创建一个大小为n行m列的字符数组;
  3. 逐行接收用户输入的字符,并将其存储到字符数组中。

代码示例

下面是一个示例代码,演示了如何实现从控制台输入n行m列的字符数组:

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入行数n:");
        int n = scanner.nextInt();

        System.out.println("请输入列数m:");
        int m = scanner.nextInt();

        char[][] charArray = new char[n][m];

        System.out.println("请输入字符数组:");
        for (int i = 0; i < n; i++) {
            String line = scanner.next();
            charArray[i] = line.toCharArray();
        }

        System.out.println("输入的字符数组为:");
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < m; j++) {
                System.out.print(charArray[i][j] + " ");
            }
            System.out.println();
        }
    }
}

上面的代码首先通过Scanner类从控制台获取用户输入的行数n和列数m,然后创建一个大小为n行m列的字符数组charArray。接着通过循环逐行接收用户输入的字符,并将其存储到字符数组中。最后再将输入的字符数组打印出来。

序列图

下面是一个序列图,展示了从控制台输入n行m列的字符数组的交互过程:

sequenceDiagram
    participant User
    participant Scanner
    participant Main

    User->>Main: 运行程序
    Main->>Scanner: 输入行数n
    Scanner->>Main: 返回行数n
    Main->>Scanner: 输入列数m
    Scanner->>Main: 返回列数m
    Main->>Scanner: 输入字符数组
    Scanner->>Main: 返回字符数组
    Main->>User: 打印字符数组

总结

通过以上的代码示例和序列图,读者应该已经了解了如何在Java中实现从控制台输入n行m列的字符数组。这种功能在处理矩阵运算或者文本处理时非常实用,希望读者可以根据本文提供的示例代码进行实践,加深对Java编程的理解。如果有任何疑问或者建议,欢迎留言讨论。