如何删除对象数组的内容。如果还有其他方法可以删除对象数组的内容,请共享。
import java.util.Arrays;
import java.util.Scanner;
import org.apache.commons.lang3.ArrayUtils;
public class Testing {
public static void deleteItem(ItemTracker[] listItems) {
System.out.println("Which item you want to delete? ");
for(int i=0; i < listItems.length; i++) {
if(input.equalsIgnoreCase("Quantity")) {
// Some Code
} else if(input.equalsIgnoreCase("Something"){
ArrayUtils.remove(listItems, i); // This is the part where it should delete .. but it doesnt delete.
}
break;
}
}
}
最佳答案
改变这个
ArrayUtils.remove(listItems, i);
至
listItems = ArrayUtils.remove(listItems, i);
正如您在JavaDoc中看到的那样,该方法不会更改参数
listItems
,而是会返回带有剩余元素的新数组。编辑
您还需要将删除方法更改为
public static ItemTracker[] deleteItem(ItemTracker[] listItems) {
//..
}
因此,您可以返回带有其余元素的新数组。