如何删除对象数组的内容。如果还有其他方法可以删除对象数组的内容,请分享。
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);
to
listItems = ArrayUtils.remove(listItems, i);
正如你在JavaDoc https://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/ArrayUtils.html#remove%28java.lang.Object%5B%5D,%20int%29,该方法不会改变参数listItems
,而是返回一个包含剩余元素的新数组。
Edit
您还需要将删除方法更改为
public static ItemTracker[] deleteItem(ItemTracker[] listItems) {
//..
}
因此,您可以返回带有剩余元素的新数组。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)