ArrayList中:
public boolean add(Object o) {
 ...
}vector中:
public synchronized void addElement(Object obj){
...
}synchronized意思简单说就是
lock();
add();
unlock();

解决方案 »

  1.   

    既然这样,为什么我看了一些帖子,都建议用ArrayList呢?!
    反而不用VECTOR,在数据库这方面
      

  2.   

    同步是以牺牲效率为代价的不需要同步的地方当然用ArrayList
      

  3.   

    按照这样的理解,那如果只是数据查询,用VECTOR就可以了,数据的更新和插入就用ARRAYLIST????是这样么!
      

  4.   

    回复人: kingfish(八百里秦川@龙城异客) ( ) 信誉:100  2004-08-25 13:50:00  得分: 0  
     
     
       ArrayList中:
    public boolean add(Object o) {
     ...
    }vector中:
    public synchronized void addElement(Object obj){
    ...
    }synchronized意思简单说就是
    lock();
    add();
    unlock();
      
     ============================================================严重关注,我对JDK中这部分什么同步不同步不理解, 请高手再说明白点这里
    lock();
    add();
    unlock(); 
    是不是跟线程有关系???
      

  5.   

    也不是,
    如果不是多线程往ArrayList里插入,更新是用不着考虑同步的!
    否则就要用synchronized了
      

  6.   

    http://dev.csdn.net/develop/article/22/22749.shtm
    看看这篇文章,也许会给你点帮助.
      

  7.   

    to 
    回复人: boykent(一路狂飙) ( ) 信誉:97  2004-08-25 14:59:00  得分: 0  
     
     
       http://dev.csdn.net/develop/article/22/22749.shtm
    看看这篇文章,也许会给你点帮助.
      
     ===============================================================同步性
    Vector是同步的。这个类中的一些方法保证了Vector中的对象是线程安全的。而ArrayList则是异步的,因此ArrayList中的对象并不是线程安全的。因为同步的要求会影响执行的效率,所以如果你不需要线程安全的集合那么使用ArrayList是一个很好的选择,这样可以避免由于同步带来的不必要的性能开销。这部分不明白```能不能把什么是"同步"解释一下啊  大哥````
      

  8.   

    to zhouysh
    同步也就是使多个线程同步用来协调各个线程对指定资源的访问(通常是保证线程对资源的独占性访问)。如果只有一个线程,也就没必要使用synchronized,用了也没错,就是会降低点效率
      

  9.   

    谢谢,能理解了,可能不能理解的是,对JAVA线程的深入了解吧!!!
      

  10.   

    to 
    回复人: kingfish(八百里秦川@龙城异客) ( ) 信誉:100  2004-08-25 15:12:00  得分: 0  
     
     
       to zhouysh
    同步也就是使多个线程同步用来协调各个线程对指定资源的访问(通常是保证线程对资源的独占性访问)。如果只有一个线程,也就没必要使用synchronized,用了也没错,就是会降低点效率
      
     
    =============================================================================哦,  你这里说的同步 应该跟我在"操作系统课"上学的各个"线程同时运行"是一个道理吗???
    也就是说多个用户同时访问数据库中的一张表 就会出现 你说说的同步问题 对吗???
    这个时候 我们在写程序中就必须要用到VECTOR ,而不能用ArrayList???但是不对啊 
    我在公司写的程序都是用ArrayList 
    晕了 完全不懂这一块
    555555555555555555555555555