找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[ JAVA初中级开发 ] [守望者 java初中级视频 ]11_java集合框架

2014-08-18 20:22| 发布者: zhouy | 查看: 1906 | 收藏

摘要: 内容简介:学习java的集合框架,包括List,set,Map,Queue接口,并介绍他们相应接口之前的差异性。并从性能和现场安全的角度对集合的选择做了一个介绍。 ... ... ... ... ...

1.Java集合:


集合可以简单看成是逻辑上管理对象并且完成对象的存储工作.就好像一个容器一样.用于盛装我们的对象.

 

2.Collection接口以及子类


1)List:ArrayList:是一个顺序的结构,适合随机的查找.

       LinkedList:是一个链表的结构  适合增加  删除以及修改的操作.

       Vector:是JDK早期的版本.

      

2)Set:主要实现数据的踢重,是不会有相同的数据的.

     Hashset   TreeSet

     Hashset:是基于hash函数的  hash(object)

     TreeSet:主要是基于红黑树进存储和查找.

     一个基于自然顺序的排序结构

1 2 3........    A  B  C

“Adde”  “BDTTYsss”   “CPU”。

 

3)Queue:是一个基于FIFO的队列


4)map接口

  Map主要实现(key,value)这样的数据结构

  HashMap:通过hash(key)

  TreeMap:基于红黑树实现存储和查找.

  HashTable:JDK早期的版本


3.线程安全


List:1)Vector所有的方法都是线程安全的。因为所有的方法都是听过synchronized修饰的.

 ArrayList:是非线程安全的.Collections.synchronizedList(List list)

 

是否在飞线程安全下使用.

 

CopyOnWriteArrayList在java.util.concurrent也是一个线程安全的类,

主要是:当对于此集合进行写操作的时候  会完成数组的复制.所以当读大于写的时候   这样的结构有很好的并发性,

 

Set:CopyOnWriteArraySet  和CopyOnWriteArrayList一致.

 

Queue:ConcurrentLinkedQueue:提供的并发queue,无界线程安全队列,非阻塞的队列,没有 Take和put  成对出现.

ArrayBlockingQueue:阻塞的队列,当queue满的时候,会阻塞指导queue可以插入数据为止,当queue为空的时候会一直阻塞直到有元素为止.

 Take和put  成对出现.


4.迭代异常

 

java.util.ConcurrentModificationException 对于 hashset  ArrayList   LinkedList   TreeSet  hashMap   treeMap  linkedHashMap在迭代元素的时候  是不允许去修改我们的集合的.一旦修改会出现迭代异常.后来并发包下的集合解决了这个问题,引入弱迭代器.



java集合_01:


java集合_02:

会员评论  

已有0参与评论

推荐阅读

[守望者   java初中级视频]22_javaNIO,AIO编程
[守望者 java初中级视频]22_javaNIO,
内容简介:本课程介绍阻塞,非阻塞,同步和异步的基本概念,介绍javaNIO,AIO
[守望者 算法视频]01_数据存储(链表与数组)
[守望者 算法视频]01_数据存储(链表与
本章重点介绍数据的在计算机的存储方式 :连续存储(数组)与链式存储,同时
[守望者   java初中级视频]00_java初中级课程学习导航
[守望者 java初中级视频]00_java初中
内容简介:全面贾少这套视频课程学习需要具备的理论基础,以及适合的学习人群
【守望者 游戏项目】基于cocos2d-x的跑酷游戏项目教程
【守望者 游戏项目】基于cocos2d-x的跑
Cocos2d-x跑酷游戏项目教程Cocos2d-x跑酷游戏项目教程cocos2d-x特性cocos2
【守望者 观点】智能路由和Wi-Fi探针是一对好基友
【守望者 观点】智能路由和Wi-Fi探针是
智能路由与Wifi探针可以收集用户行为,同时可以收集用户MAC地址,还可以跟踪
【守望者 linux项目】mini WEB服务器设计
【守望者 linux项目】mini WEB服务器设
以下是曾经Watchmen一个朋友学习网络编程时设计的一个简单的MiniWEB服务器。
[守望者 算法视频]08_数据查找_hash算法
[守望者 算法视频]08_数据查找_hash算
守望者:普通逐个查找O(n),组织方式可以无序的数组或者普通链表。已经排序的
【守望者 linux项目】linux下的FTP服务器与客户端,作者 灯下野狐 ...
【守望者 linux项目】linux下的FTP服务
本项目是一个完整的FTP服务器及FTP客户端设计示例,对于需要学习网络编程项目
[守望者 linux视频]01_开发工具与开发平台
[守望者 linux视频]01_开发工具与开发
本课主要介绍gcc,gdb等系列开发工具,开始编写程序之旅。要求理解Linux开发平
【解读】什么样性格的人会被夸性格好
【解读】什么样性格的人会被夸性格好
守望者:性格决定命令。好的性格意识着给别人面子,能接受别人装逼,而且以上

行业聚焦  面试交流  职位推荐  开发视频   技术交流  腾讯微博  新浪微博

友情链接:课课家教育  阿里云  鲜果  W3Cfuns前端网  中国企业家  环球企业家  投资界  传媒梦工场  MSN中文网  Android开发者社区  cnbeta  投资中国网  又拍云存储  美通说传播  IT茶馆  网商在线  商业评论网  TechOrange  IT时代周刊  3W创新传媒  开源中国社区  二维工坊  Iconfans  推酷  智能电视网  FreeBuf黑客与极客  财经网  DoNews  凤凰财经  新财富  eoe移动开发者社区  i黑马  网易科技  新浪科技  搜狐IT  创业家  创业邦  腾讯财经  福布斯中文网  天下网商  TechWeb  雷锋网  新浪创业  和讯科技  品途O2O  极客公园  艾瑞网  抽屉新热榜  卖家网  人民网通信频道  拉勾网  创新派  简单云主机  

手机版|黑名单|守望者在线 在线教育 linux 高级程序设计 C/C++ 大数据 ( 蜀ICP备14029946号

成都守望者科技有限公司 © 2013-2016 All Rights Reserved