Java 如何删除某个值之后ArrayList中的所有值
我正在创建一个方法,该方法删除ArrayList中位于数字10之后的所有索引。这就是我到目前为止所做的: 公共类ArrayPost{ 公共阵列列表Java 如何删除某个值之后ArrayList中的所有值,java,arrays,list,arraylist,indexing,Java,Arrays,List,Arraylist,Indexing,我正在创建一个方法,该方法删除ArrayList中位于数字10之后的所有索引。这就是我到目前为止所做的: 公共类ArrayPost{ 公共阵列列表 public ArrayPost(){ ArrayList<Integer> List1 = new ArrayList<Integer>(); myList = List1; myList.add(1); myList.add(2); myList.add(10); myLis
public ArrayPost(){
ArrayList<Integer> List1 = new ArrayList<Integer>();
myList = List1;
myList.add(1);
myList.add(2);
myList.add(10);
myList.add(1);
myList.add(2);
myList.add(3);
}
public ArrayList post10(ArrayList list){
myList = list;
int i;
int x = 10;
if (x == list.lastIndexOf(x)){
i = x;
do{
list.remove(i);
}while (i >= 0);
}
//System.out.println(myList.toString());
return list;
}
public ArrayPost(){
ArrayList List1=新的ArrayList();
myList=List1;
添加(1);
添加(2);
添加(10);
添加(1);
添加(2);
添加(3);
}
公共ArrayList post10(ArrayList列表){
myList=列表;
int i;
int x=10;
if(x==list.lastIndexOf(x)){
i=x;
做{
列表。删除(i);
}而(i>=0);
}
//System.out.println(myList.toString());
退货清单;
}
}
所有这些都会打印出我的ArrayList。它不会删除10之后的所有数字。如果有人能帮忙,那就太好了
谢谢 这应该行得通
public ArrayList post10(ArrayList list){
myList = new ArrayList<>(list.size());
for (item : list) clone.add(item.clone());
myList = list;
int x = 10;
for(int i = list.length() - 1; i >= 0; i--){
if(myList.get(i) == x)
break;
myList.remove(i);
if(i == 0)
myList = list;
}
return myList;
}
public ArrayList post10(ArrayList列表){
myList=newArrayList(list.size());
对于(item:list)clone.add(item.clone());
myList=列表;
int x=10;
对于(int i=list.length()-1;i>=0;i--){
if(myList.get(i)=x)
打破
myList.remove(i);
如果(i==0)
myList=列表;
}
返回myList;
}
如果列表不包含10,则删除所有元素。变量myList
和list
引用相同的列表对象,因此结果不变。