zoukankan      html  css  js  c++  java
  • Java集合之Vector

    vector

    • 定义
    C++:vector 
    Java:Vector<Object>(线程安全)   ArrayList<Object>
    
    • 创建与其基本操作
    创建:
    Vector<Integer> v=new Vector<Integer>();
    ArrayList<Integer> v=new ArrayList<Integer>();
    数组:
    Vector<Integer> v=new Vector[N];
    ArrayList<Integer> v=new ArrayList[N];
    基本操作:
    清空:
    clear()
    添加:
    boolean add(Object o) //
    void add(int index,Object o) //
    boolean addAll(Collection o) //
    boolean addAll(int index,Object o)
    修改:
    Object set(int index,Object o) //
    遍历:
    1. 使用size和get
    2. 使用增强型访问
    3. 使用Iterator it = list.iterator();
    查询:
    Object get(int index)
    int indexOf(Object o) //找到第一个
    int lastIndexOf(Object o) //找到最后一个
    boolean isEmpty()
    删除:
    boolean remove(int index)
    boolean remove(Obeject o)
    
    • 二分查找实现indexOf()lastIndexOf()
    //前提保证Vector<Integer>v 有序
    void Init(){
         Collections.sort(v);    
    }
    public int indexOf(int x){
          int l=0,r=v.size()-1,index=-1;
          while(l<r){
              int mid=(l+r)>>1;
              if(v.get(mid)>=x) r=mid;
              else l=mid+1;
          }
          if(v.get(r)==x) index=r;
          return index;
    }
    public int lastIndexOf(int x){
          int l=0,r=v.size()-1,index=-1;
          while(l<r){
              int mid=(l+r)>>1;
              if(v.get(mid)<=x) l=mid;
              else r=mid-1;
          }
          if(v.get(l)==x) index=l;
          return index;       
    }
    
  • 相关阅读:
    Struts2拦截器
    Struts2 数据封装与值栈
    Struts2的环境搭配
    自学spring AOP
    小白学Maven第二篇配置Ecilpse
    小白学Maven第一篇配置
    web项目jsp出现The superclass javax.servlet.http.HttpServlet was not found on the Java Build Path错误
    软件测试复习(二)
    软件测试复习(一)
    白盒测试概述
  • 原文地址:https://www.cnblogs.com/zsyacm666666/p/7655877.html
Copyright © 2011-2022 走看看