List<User>获取某个User的下标
User对象中有name,address,age等,List<User>是User的一个集合,怎样从集合中获取某个User的下标?indexOf()这个好像不行...
User对象中有name,address,age等,List<User>是User的一个集合,怎样从集合中获取某个User的下标?indexOf()这个好像不行
展开
展开全部
List的indexOf()方法不行,是因为你没有重写User类的equals()方法,indexOf()调用Object类的equals()方法进行比较,这一方法比较的依据是两个对象的ID(地址)。
追问
对,就是两个对象的id不一样,那么除了重写equals()方法之外,还有木有别的方法可以获取?
追答
for(List l : list) { //list是要遍历的List<User>列表
if(l满足特定条件) {
return l;
}
}
这不是首先应该考虑的做法,重写equals方法才是,不论是从标准性上还是适用性上来说。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询