如何在给定位置的数组中放置元素?

时间:2015-07-19 15:31:31

标签: java arrays add element

我有以下问题。

int[] ar={4,6,7,8}

现在我想添加一个元素,所以我得到了

ar={4,6,9,7,8}

我希望能够在一个我想要这个案例索引2的位置添加一个给定的元素(9)。

4 个答案:

答案 0 :(得分:3)

在Java中,无法更改数组的大小。相反,您可以使用List

List<Integer> numList = new ArrayList<Integer>();
numList.add(4);
numList.add(6);
numList.add(7);
numList.add(8);

然后,您可以使用numList.add(int index, E element);在特定位置插入值。

numList.add(2, 9);
//numList = {4, 6, 9, 7, 8};

有关详细信息,您可以查看this tutorial

答案 1 :(得分:0)

Java数组是固定长度的,因此您需要创建另一个数组来存储额外的元素。

int[] ar = { 4, 6, 7, 8 };
int[] tmp = new int[ar.length + 1];
int pos = 2;
for (int i = 0; i < pos; i++) {
    tmp[i] = ar[i];
}
for (int i = pos + 1; i <= ar.length; i++) {
    tmp[i] = ar[i - 1];
}
tmp[pos] = 9;
System.out.println(Arrays.toString(tmp));

输出(按要求)

[4, 6, 9, 7, 8]

答案 2 :(得分:0)

How to add new elements to an array?

add an element to int [] array in java

请注意,ArrayList还有一个add方法,允许您指定索引和要添加的元素void add(int index, E element)

答案 3 :(得分:0)

最简单的方法是使用ArrayList<Integer>并使用add(int, T)方法。

List<Integer> numList = new ArrayList<Integer>();
numList.add(4);
numList.add(6);

// Now, we will insert the number
numList.add(2, 9);