如何将标记存储到给定数组中它们自己的元素中?

How do I store tokens into their own element in a given array?

我正在尝试编写一种方法,该方法将使用 StringTokenizer 通过单个 space 分解用户输入的字符串,并将每个单词存储到它们自己的数组中。给定的代码是我在卡住 3 小时之前得到的。我试图通过让 for 循环打印出数组的元素来测试代码,但它所做的只是每个元素的 return null。我究竟做错了什么?我最好的猜测是它没有将数组索引分配给令牌,但我不确定..任何帮助都会很棒。谢谢!

此外,我知道 StringTokenizer 是老旧的东西,但我的教授严格声明他希望我们使用它。

谢谢

private void receiveInput() {

    Scanner scanner = new Scanner(System.in);
    System.out.println("Please enter your command: ");
    String input = scanner.nextLine();
    StringTokenizer st = new StringTokenizer(input, " ");
    int number = st.countTokens();
    String tokenArray[] = new String[number];
    for (int i = 0; i < tokenArray.length; i++) {
         System.out.println(tokenArray[i]);
    }
}

字符串数组 tokenArray 已使用标记大小进行初始化,但数组中的元素未分配值

需要

tokenArray[i] = st.nextToken();

修改后的代码

Scanner scanner = new Scanner(System.in);
System.out.println("Please enter your command: ");
String input = scanner.nextLine();
StringTokenizer st = new StringTokenizer(input, " ");
int number = st.countTokens();
String tokenArray[] = new String[number];
for (int i = 0; i < tokenArray.length; i++) {
    tokenArray[i] = st.nextToken();
    System.out.println(tokenArray[i]);
}
    Scanner scanner = new Scanner(System.in);
    System.out.println("Please enter your command: ");
    String input = scanner.nextLine();
    StringTokenizer st = new StringTokenizer(input, " ");
    while(st.hasMoreTokens()) {
        System.out.println(st.nextToken());
    }