如何从数组中删除元素?


要从数组中特定位置删除元素,从所需位置开始,用当前位置的元素替换下一个位置的元素。

示例

 实时演示

public class DeletingElementsBySwapping {
public static void main(String args[]) {
int [] myArray = {23, 93, 56, 92, 39};
System.out.println("hello");

int size = myArray.length;
int pos = 2;

for (int i = pos; i<size-1; i++) {
myArray[i] = myArray[i+1];
}

for (int i=0; i<size-1; i++) {
System.out.println(myArray[i]);
}
}
}

输出

hello
23
93
92
39

备选解决方案

Apache Commons 提供了一个名为 **org.apache.commons.lang3** 的库,以下是对项目添加该库的 maven 依赖项。

<dependencies>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.0</version>
</dependency>
</dependencies>

此软件包提供了一个名为 **ArrayUtils** 的类。使用此类中的 **remove()** 方法代替元素交换,可以删除它们。

示例

import java.util.Arrays;
import org.apache.commons.lang3.ArrayUtils;

public class DeletingElements {
public static void main(String args[]) {
int [] myArray = {23, 93, 56, 92, 39};
int [] result = ArrayUtils.remove(myArray, 2);
System.out.println(Arrays.toString(result));
}
}

输出

[23, 93, 92, 39]

更新于: 16-Jun-2020

1K+ 浏览

开启您的职业生涯

完成该课程认证

开始
广告