多个对象存储的ArrayList中,如何获取该对象在ArrayList里的索引值

多个对象存储的ArrayList中,如果只知道对象其中的一个属性,如何获取该对象在ArrayList里的索引值?

比如说:一个Person类有三个属性(String name ,String sex,int age)
Person p1=new Person("张三","男",20);
Person p2=new Person("李四","男",22);
Person p3=new Person("王五","男",24);

然后这些对象都储存在ArrayList集合里,如果只知道"李四"这个名字(在不知道性别和年龄的情况下),如何获取"李四"这个对象在ArrayList集合里的索引值(即1)?


千万里不及你
浏览 1284回答 4
4回答

沧海一幻觉

for(int&nbsp;i&nbsp;=&nbsp;0;i<list.size();i++)&nbsp;{ &nbsp;if("李四".equales(list.get(i).getName())){ return&nbsp;i;//i就是索引 } }

慕仙森

int index = 0;for(int i = 0 ; i<Arraylist.size(); i++){if("李四".equals(Arraylist.get(i).getName())){index = i;}}index 就是你要获得的下标

森林海

遍历整个ArrayList,把所有值相同的都取出来,用键值对的形式for(int i = 0 ; i<Arraylist.size(); i++){if("李四".equals(Arraylist.get(i).getName())){Map.put(i,Arraylist(i));}}这样就把所有想要的值和下标都放在Map中了

一只斗牛犬

对象中的属性是有可能重复的, 对此很难判断到底哪个对象的索引是你想要的。&nbsp;除非能确保你要查的属性值是唯一的。如果此, 那也只能通过遍历比较了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java