篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了List中的get(i)方法是获取List中的第i个对象吗相关的知识,希望对你有一定的参考价值。
List中的get(i)方法是获取List中的第i+1个对象。因为List是从0开始的,List是有序的可重复的集合接口。
List<People> list = new ArrayList<People>();
for(int i = 0;i<list.size();i++)
People people = list.get(i);
//当i=0时,取得是list集合中第一个元素,
//当i=1时,取得是list集合中第二个元素,
......
//当i=i时,取得是list集合中第i+1个元素。
一个是获取list集合中的第一个元素,第二个是获取指定索引的元素。
扩展资料
List list = new ArrayList();
list.add(xxx);
list.add(yyy);
...
list.get(0);是获取list里面索引为0的(也就是第一个)元素
list.get(i);是获取list里面索引为i的(也就是第i+1个)元素
i是一个整型的变量,比如int i=5; 那么就是取出索引为5(第6个)元素
list.get(i)更常用的是在遍历的时候,比如
for(int i=0;i<list.size();i++)
System.out.println(list.get(i));
参考资料来源:
百度百科——list
参考技术A
List中的get(i)方法是获取List中的第i+1个对象。因为List是从0开始的,List是有序的可重复的集合接口。
List<People> list = new ArrayList<People>();
for(int i = 0;i<list.size();i++)
Peoplepeople=list.get(i);
//当i=0时,取得是list集合中第一个元素,
//当i=1时,取得是list集合中第二个元素,
......
//当i=i时,取得是list集合中第i+1个元素。
一个是获取list集合中的第一个元素,第二个是获取指定索引的元素。
List 接口提供了 4 种对列表元素进行定位(索引)访问方法。列表(像 Java 数组一样)是基于 0 的。注意,这些操作可能在和某些实现(例如 LinkedList 类)的索引值成比例的时间内执行。因此,如果调用者不知道实现,那么在列表元素上迭代通常优于用索引遍历列表。
扩展资料:
list.get(0) 和list.get(i)的区别如下:
List<People> list = new ArrayList<People>();
for(int i = 0;i<list.size();i++)
People people = list.get(i);
//当i=0时,取得是list集合中第一个元素,
//当i=1时,取得是list集合中第二个元素,
......
//当i=i时,取得是list集合中第i+1个元素。
参考资料来源:百度百科-list (计算机专业术语)
List集合在遍历过程中的删除:[1,1,2,3,4,5]
for循环正续会漏掉一个1
for(int i=0;i<list.size();i++){
if(list.get(i).equals(1)){
list.remove(i);
}
}
for循环倒序可以删除所有1
for(int i=list.size()-1;i>=0;i--){
if(list.get(i).equals(1)){
list.remove(i);
}
}
迭代器和foreach遍历时删除都会报错:java.util.ConcurrentModificationException;
foreach就是通过Iterable接口在序列中进行移动
Iterator iterator=list.iterator();
while(iterator.hasNext()){
int temp=(int) iterator.next();
if(temp==1){
list.remove(temp);
}
}
for (Object object : list) {
if(list.get(0).equals(1)){
list.remove(0);
}
}
因此,不能在对一个List进行遍历的时候将其中的元素删除掉
解决办法是,你可以先将要删除的元素用另一个list装起来,等遍历结束再remove掉
可以这样写
List delList = new ArrayList();//用来装需要删除的元素
for(Information ia:list)
if(ia.getId()==k){
n++;
delList.add(ia);
}
list.removeAll(delList);//遍历完成后执行删除