tzkr.net
当前位置:首页 >> jAvA哪些集合是安全的 >>

jAvA哪些集合是安全的

一些历史类的一般是线程安全的,例如:vector,hashtable等 在jdk升级后,出现了替代一些集合的类,arraylist,hashmap等,一般都是线程不安全的.

java集合框架提供了多种synchronized集合, 比如Vector, HashTable, Collections的synchronizedXxx方法的返回值等.synchronized集合是线程安全的, 但不是严格线程安全的. 根据JCIP第二章关于线程安全的定义--线程安全的类无需调用方进行额外的同步--synchronized集合是不满足该定义的. 如果我们将线程安全的定义放宽一些--单次调用对象的方法而无需调用方进行额外的同步, 这样synchronized集合就符合定义了.

: hashtable, vector是线程安全的

ArrayList和HashMap是异步的,Vector和HashTable是同步的.List本身是一个接口,有一个类叫Vector,它实现了List,并且这个Vector是线程同步的. 在实际运用中,至少我没看见谁直接用List来装东西,最多会是这样:List list = new ArrayList();List list = new Vector();

1. ArrayList: 元素单个,效率高,多用于查询2. Vector: 元素单个,线程安全,多用于查询3. LinkedList:元素单个,多用于插入和删除4. HashMap: 元素成对,元素可为空5. HashTable: 元素成对,线程安全,元素不可为空

List: 有顺序的,元素可以重复遍历:for?? 迭代排序:Comparable Comparator???? Collections.sort()ArrayList:底层用数组实现的List特点:查询效率高,增删效率低?? 轻量级 线程不安全LinkedList:底层用双向循环链表 实现的List特点

线程安全是指要控制多个线程对某个资源的有序访问或修改,而在这些线程之间没有产生冲突. 在java里,线程安全一般体现在两个方面: 1、多个thread对同一个java实例的访问(read和modify)不会相互干扰,它主要体现在关键字synchronized.

集合主要有Collection和Map接口.List特点:元素有放入顺序,元素可重复 Map特点:元素按键值对存储,无放入顺序 Set特点:元素无放入顺序,元素不可重复(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决

JAVA中线程安全的map有:Hashtable、synchronizedMap、ConcurrentHashMap.java中map中线程安全怎么实现:1、同步的map就是Hashtable, concurrenthashmap.2、你看到的Hashtable就是直接在hashmap上加了个锁,

1、你是指并发操作时的线程安全吗?2、容器中线程安全的如:vectory,hashtable,非线程安全的如:hashmap,arrylist等.3、对于原定义非线程的容器如:hashmap,arraylist可以使用Collections中的synchronizedList(list),synchronizedMap(map),synchronizedSet(set)等方法来使原来非线程安全的容器编程线程安全.4、另一方面容器中使用泛型:容器也是使容器安全的一种方式.

网站首页 | 网站地图
All rights reserved Powered by www.tzkr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com