给定一个包含 n 个对象的数组,假设是一个字符串数组,它具有以下值:
foo[0]="a";
foo[1]="cc";
foo[2]="a";
foo[3]="dd";
我该怎么做才能删除某个字符串/对象?谢谢!
在数组中,您不能按照您的意思删除对象(您可以用 null 替换它们,但我认为这不是您的意思。数组是一系列盒子,您可以在每个盒子中放置任何东西,但是您不能把一个盒子拉出来,把剩下的用胶带粘在一起
另一方面,ArrayList 具有 .add 和 .remove 方法,可让您从中删除某个对象。
请参阅这个 arrayList 如何工作的示例
public static void main(String args[]) {
ArrayList<String> list=new ArrayList<String>();
list.add("zero");
list.add("one");
list.add("two");
list.add("three");
list.add("four");
list.remove(2); //remove by index
list.remove("three");
for(int i=0;i<list.size();i++){
System.out.println(list.get(i));
}
}
如果一个特定的函数真的需要一个数组,那么有一些方法可以转换回一个数组
String[] array=new String[list.size()];
list.toArray(array); //fills array with contents of list
for(int i=0;i<array.length;i++){
System.out.println(array[i]);
}