Java 如何在android中从arraylist中删除元素
无法删除对象。如何从arraylist中删除对象 我的代码Java 如何在android中从arraylist中删除元素,java,Java,无法删除对象。如何从arraylist中删除对象 我的代码 在java中,遍历列表时从列表中删除项目的唯一方法是通过迭代器。解决方案 从kisi类中的成员变量中删除statics 但也要注意 new kisi("1","betül") 因此,您的id是一个字符串 当您查看比较ID的列表时,请使用=进行比较 java中的=是相同的比较,而不是相等的比较。这与C#say中字符串的行为不同 所以你应该做的是: for (int i = 0; i < x.size(); i++) { if
在java中,遍历列表时从列表中删除项目的唯一方法是通过迭代器。解决方案 从
kisi
类中的成员变量中删除static
s
但也要注意
new kisi("1","betül")
因此,您的id
是一个字符串
当您查看比较ID的列表时,请使用=
进行比较
java中的=
是相同的比较,而不是相等的比较。这与C#say中字符串的行为不同
所以你应该做的是:
for (int i = 0; i < x.size(); i++) {
if (x.get(i).id.equals(k.id)) { //change here
Object obj = x.remove(i);
break;
}
}
这样的构造函数将在不调用.equals
的情况下中断代码:
public kisi(String id, String string2) {
this.id = id + string2;
}
要在遍历列表时安全地从列表中删除元素,需要使用迭代器。否则你可能会得到奇怪的结果
那么这是什么:或者为什么在他的情况下不起作用?@weston请回顾一下你似乎在说你必须使用迭代器和迭代器。如果你想在浏览列表时删除,请删除。这不是真的。这不是一个坏建议,但它不是唯一的方法。当代码运行时,它没有输入if语句。当我编写列表元素时,它只写了三分之一的元素。发布你的kisi
类的构造函数。你需要编辑问题来添加它。在那里有一个注释,所以我不知道在哪一行。啊,好的:从kisi
类中的成员变量中删除static
s。我想写列表元素。每个迭代器只显示第二个元素。for(kisi-kisi:x){Toast.makeText(getApplicationContext(),“eleman”+kisi.ad,Toast.LENGTH\u LONG)。show()}发布kisi
类的构造函数。
for (int i = 0; i < x.size(); i++) {
if (x.get(i).id.equals(k.id)) { //change here
Object obj = x.remove(i);
break;
}
}
public class kisi {
public String id;
public kisi(String id, String string2) {
this.id = id;
}
}
public kisi(String id, String string2) {
this.id = id + string2;
}