Java - 用户输入/数组

时间:2016-06-15 06:25:20

标签: java arrays

所以我很难找到如何将整数放入数组中的方法,我的目标是,创建一个程序,用户将存储10个数字,然后显示它。

所以这就是我到目前为止所做的:

import java.util.Scanner;

public class wtf {
    public static void main(String args[]){
        Scanner input = new Scanner(System.in);
        int array[] = new int[10];

        for(int i=1;i<array.length;i++){
            System.out.print("Enter a number: ");
            array[] = input.nextInt();
        }
    }
}

但不幸的是有一个错误。

4 个答案:

答案 0 :(得分:1)

首先,您需要指定要插入数据的位置的索引

在你的情况下将是

 array[i - 1] = input.nextInt();

由于数组基于零,最好像

一样循环
for(int i=0; i<array.length; i++){
....

答案 1 :(得分:0)

您无法向数组添加元素,只需覆盖现有元素即可。 所以你需要提供索引放置元素的位置。

您应该更改一行:

        array[i-1] = input.nextInt();

i-1因为数组是从java中的0编入索引的,而您的f i是从110

你在1到9之间迭代(i = 1i < array.length),你应该使用下面的代码来迭代1到10之间:

for(int i=1;i<=array.length;i++){

所以基本上你应该使用下面的一个块:

1索引

for(int i=1;i<=array.length;i++){
    System.out.print("Enter a number: ");
    array[i-1] = input.nextInt();
    }
}

0索引

for(int i=0;i<array.length;i++){
    System.out.print("Enter a number: ");
    array[i] = input.nextInt();
    }
}

另一个选择是使用一个集合,例如ArrayList在这种情况下,您无需预先提供它的大小。

答案 2 :(得分:0)

访问阵列时缺少索引。

您需要的是:

// You should also start from i = 0
for(int i=0;i<array.length;i++){
    System.out.print("Enter a number: ");

    // need array[i] here
    array[i] = input.nextInt();
}

如果您想显示之后的数字,您可以这样做:

for (int i = 0; i < array.length; i++)
{
    System.out.println(array[i]);
}

答案 3 :(得分:-1)

首先,您需要为整数数组对象指定索引... 数组的每个元素都有其特定的索引...从 0开始到n-1 ,其中n是数组中元素的数量。 第二,编程中的索引始终从0开始 索引经常与位置混淆.. 位置从1开始具有通常的含义...... 考虑一个具有元素的数组 56 98 65 12

这里98是索引1和位置2

现在你需要做的就是

将输入行更改为:

array[i]=input.nextInt();