如何从数组中删除元素?
从数组中的特定位置删除元素。从所需位置开始,用下一位置中的元素替换当前位置中的元素。
示例
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]
广告