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

    1.ArrayList:采用数组的形式保存对象,这种方式将对象保存在连续的位置中,所以查询效率比较高,但是插入删除时麻烦,并且ArrayList不是线程安全的。

    2.Vector:保存对象的方式与ArrayList相同,但是Vertor方法中都有synchronized关键字,所以是线程安全的。

    3.LinkedList 采用的将对象存放在独立的空间中,而且在每个空间中还保存下一个链接的索引 但是缺点就是查询麻烦。

    关于ArrayList实现线程安全方法:

    1.使用Vector,它是ArrayList的线程安全版本,其实现90%和ArrayList都完全一样。

    2.使用Collections.synchronizedList方法把你的ArrayList变成一个线程安全的List。

    3.两种区别

      1.SynchronizedList有很好的扩展和兼容功能。他可以将所有的List的子类转成线程安全的类。 

      2.使用SynchronizedList的时候,进行遍历时要手动进行同步处理。

      3.SynchronizedList可以指定锁定的对象。

      4.LinkedList也是使用SynchronizedList转换成线程安全的类,Vector不能替代LinkedList。

  • 相关阅读:
    SQLi-Labs
    ASP.NET 简介
    CSS
    Apache 基本配置
    【Windows 基础】 01
    sqli1-4
    SQL注入介绍(本文更新中)
    【DC-1】靶机实战
    常见端口的漏洞总结
    element ui table动态控制某列展示与否,并且该列使用了fixed,导致列表错位问题
  • 原文地址:https://www.cnblogs.com/michaelShao/p/6372720.html
Copyright © 2011-2022 走看看