有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java我试图用一定数量的元素创建一个数组,但是当使用一个变量时,它不起作用

在这里,我在变量长度中输入了一个4值。我应该得到一个包含4个元素的数组,但我只能输入3个元素

public static void main(String[] args) {
    int length;
    Scanner input = new Scanner(System.in);
    System.out.print("Length: ");
    length = input.nextInt();
    String[] my_friend_names = new String[length];
    for (int i = 0; i < length; i++) {
        my_friend_names[i] = input.nextLine();
    }
    for (int i = 0; i < length; i++) {
        System.out.println("Name: " + my_friend_names[i]);
    }
}

输出:

  • 长度:4
  • 一,
  • 二,
  • 三,
  • 姓名:
  • 姓名:1
  • 姓名:2
  • 姓名:3

现在,如果我将length变量更改为数字4,它就可以工作了

public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    String[] my_friend_names = new String[4];
    for (int i = 0; i < 4; i++) {
        my_friend_names[i] = input.nextLine();
    }
    for (int i = 0; i < 4; i++) {
        System.out.println("Name: " + my_friend_names[i]);
    }
}

输出:

  • 一,
  • 二,
  • 三,
  • 四,
  • 姓名:1
  • 姓名:2
  • 姓名:3
  • 姓名:4

你知道为什么吗


共 (2) 个答案

  1. # 2 楼答案

    Java数组是固定的。尝试使用列表代替