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

How can i place an element in an array on a given position?

我有以下问题。

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

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

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

我希望能够在本案例索引 2 中我想要的位置添加给定元素 (9)。如何?

在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

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]

How to add new elements to an array?

add an element to int [] array in java

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

最简单的方法是使用 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);