如何從陣列中刪除元素?


要從陣列中特定位置刪除元素,從所需位置開始,用當前位置的元素替換下一個位置的元素。

示例

 即時演示

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+ 瀏覽

開啟您的職業生涯

完成該課程認證

開始
廣告
© . All rights reserved.