向数组添加元素

时间:2014-06-12 14:03:34

标签: java arrays

首先,如果这是一个简单的问题,请道歉,但我非常坚持。

我需要创建一个元素总数的数组,有14个。我想将14个元素中的每个元素添加到数组中,并建议使用循环执行此操作,因为我将执行更多这样的任务但是有更多的元素。到目前为止我已尝试过此代码,但没有运气;

int [] deviceID;
for(int i = 292; i <= 305; i++)
{
    deviceID[i];
}

但我得到例外insert "AssignmentOperator Expression" to complete Expression。 然后我将线路改为

deviceID = deviceID[i];

现在我得到Type Mismatch: cannot convert from int to int[]

只是为了清楚我希望数组的插槽0具有值292,插槽1有293 ........插槽14有305

任何人都可以帮我这个吗?我认为基本而简单的事情对我来说变成了一个噩梦。

6 个答案:

答案 0 :(得分:1)

我不明白你想做什么,但是如果你想在数组中得到292到305的值,你应该这样做:

int [] deviceID = new int[305];
for(int i = 292; i <= 305; i++)
{
    deviceID[i] = i;
}

但这真的很奇怪。你的目的是什么?

答案 1 :(得分:1)

  1. 您需要初始化数组int[] deviceId = new int[20];
  2. 您希望将292添加到数组中的305

  3. int [] deviceID= new int[14];//total element 14 (index 0 to 13)
    int j=0;//counter which provides index during loop
    for(int i = 292; i <= 305; i++)
    {
       if(j<deviceID.length)//chech whether j<14 as we want to add upto index 13   
       deviceID[j++]=i;//store i to the array at index j 
       //increments j to provide next index
    }
    

    我建议您阅读Arrays中的Java Doc,它会清除您的所有内容并为您带来更多精力再次开始编码。

答案 2 :(得分:0)

您需要实例化数组。

int[] deviceId = new int[sizeOfArray];

其中sizeOfarray是表示数组大小的整数值。

然后要分配位置,您必须使用

deviceId[index] = value;

答案 3 :(得分:0)

如果您尝试使用i的那些值填充整数数组deviceID,则需要首先确保数组足够大,然后只需填充数组。您的问题是尝试将整个数组设置为等于一个索引中的单个整数(因此类型不匹配错误)。

int[] deviceID = new int[necessarySize]; // Creates an array with size "necessarySize"
int counter = 0;
for(int i = 292; i <= 305; i++)
{
    deviceID[counter] = i; // Fills the array at index "counter" with value "i"
    counter++;
}

如果这是你的整个阵列,那么你的阵列中只需要(305-292)+1 = 14个空格。

答案 4 :(得分:0)

DO THIS

 int[] deviceId = new int[14]; //this creates a new array with size 14

 int j=0; // for array index

 for(int i = 292; i <= 305; i++)
 {

 deviceID[j] = i;      //this inserts value of i at array position j  

 j++;                  //this keeps on adding 1 to previous value     
 }                      

答案 5 :(得分:-1)

deviceID [i]只获取deviceID中的第i个元素,并且不执行任何操作。

deviceID = deviceID [i]正在尝试将int分配给声明为列表的对象,从而导致错误。

您想要做的是:

    List<int> deviceID = new List<int>()
    for(int i = 292; i <= 305; i++)
    {
        deviceID.add(i);
    }

这应该会给你一个只有数字292-305的列表