码迷,mamicode.com
首页 > 编程语言 > 详细

Java的集合框架

时间:2017-10-25 18:05:14      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:intern   table   有序   cell   new   lis   直接   padding   线程安全   

原本我打算上一篇就聊完经历就直接讲讲集合的,结果写了很多根本停不下来,所以决定新开一篇了

既然要研究集合,网络上的资源一般也是从4个维度来分析的

1.是否允许为空

2.是否允许重复的数据

3.是否有序:储存的顺序和读取的顺序是否是一致

4.线程是否是安全。

首先我们先来看一下ArrayList

是否允许为空 可以为空
是否允许重复 可以重复
是否有序 有序
是否线程安全 线程不安全

 

 

 

 

先贴上一段代码看看,验证

List<String> list = new ArrayList<String>();
list.add("a");
list.add(null);
list.add("a");
list.add("b");
System.out.println(list.toString());
[a, null, a, b]

add方法快并无synchronized修饰,因此线程是不安全的

public boolean add(E e) {
        ensureCapacityInternal(size + 1);  // Increments modCount!!
        elementData[size++] = e;
        return true;
}

 

 

 

Java的集合框架

标签:intern   table   有序   cell   new   lis   直接   padding   线程安全   

原文地址:http://www.cnblogs.com/sunshine798798/p/7730016.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!