首页 > 其他 > 详细

List集合为什么根据下标删除元素要指定下标为int类型的

时间:2020-05-21 20:28:18      阅读:76      评论:0      收藏:0      [点我收藏+]

通过看List remove方法我们就能得到答案了

public boolean remove(Object o){
     if(o ==null) {
          for(intindex=0;index< size;index++)
               if(elementData[index] ==null) {
                     fastRemove(index);returntrue;
               }
       }else{
          for(intindex=0;index< size;index++)
                    if(o.equals(elementData[index])) {
                         fastRemove(index);returntrue;
                    }
           }
          return false;
}
List进入remove方法,先判断这个对象是否在自己的队列中?而这种判断指的是是否equals;
因此,List在删除对象时,如果使用删除对象方法,应该最好重写equals方法。或者采用删除下标的方法。
删除下标时一定要确保下标的类型是int类型,若是Integer类型,List会默认匹配remove(Object o)方法,而不是remove(int index)方法。
 
做项目突然想到的一个问题做个笔记分享一下

List集合为什么根据下标删除元素要指定下标为int类型的

原文:https://www.cnblogs.com/3-stone/p/12933236.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!