当前位置: 首页 > news >正文

做自己照片视频网站顺义手机网站设计

做自己照片视频网站,顺义手机网站设计,建设网站基本步骤,专题学习网站模板1.集合框架总体架构集合大致分为Set、List、Queue、Map四种体系,其中List,Set,Queue继承自Collection接口#xff0c;Map为独立接口Set的实现类有:HashSet#xff0c;LinkedHashSet#xff0c;TreeSet...List下有ArrayList#xff0c;Vector#xff0c;LinkedList...Map下…1.集合框架总体架构集合大致分为Set、List、Queue、Map四种体系,其中List,Set,Queue继承自Collection接口Map为独立接口Set的实现类有:HashSetLinkedHashSetTreeSet...List下有ArrayListVectorLinkedList...Map下有HashtableLinkedHashMapHashMapTreeMap...list有序可重复ArrayList:数组查询快增删慢。线程不安全. Vector:数组查询快增删慢。线程安全. LinkedList:链表查询慢增删快。线程不安全set无序(不严谨)唯一HashSet:无序,唯一,哈希表实现,通过hashCode()和equals()保证唯一。 LinkedHashSet:继承自hashset,底层是链表和哈希表。(FIFO插入有序,唯一) TreeSet:底层是红黑树。(唯一有序)mapKV形式的键值对TreeMap:有序,不是线程安全的。 HashMap:无序,不是线程安全的,HashMap允许null值(key和value都允许) HashTable:无序,线程安全的,不允许null值。2. SetSet 接口继承Collection用于存储不含重复元素的集合。HashSet底层是哈希表当插入元素时HashSet会调用该对象的hashCode()方法得到hashCode然后根据hashCode决定该对象在哈希表中的存储位置。 (这里有个问题如果hashcode不是均匀分布的而是集中在一个区域极端情况下hash表会变成链表)HashSet去重原理通过equals()方法比较且其hashCode()方法返回值也相等。 (可以通过覆写hashCode和equals方法改变其去重规则进行自定义去重)TreeSetTreeSet底层是红黑树;加入元素时必须加入同类型的对象否则会发生ClassCastException异常因为TreeSet会调用集合元素的compareTo()方法来比较元素之间的大小关系(自然排序)。compareTo()方法的返回值决定了顺序:-1 表示放在红黑树的左边,即逆序输出;1 表示放在红黑树的右边即顺序输出;0 表示元素相同仅存放第一个元素自然排序(treeset去重的原理);其次TreeSet也可以通过比较器排序。LinkedHashSet继承自HashSet,底层是链表和哈希表。由链表保证元素有序(插入顺序)。由哈希表保证元素唯一TreeSet, LinkedHashSet and HashSet 的区别都实现Set接口,不包含重复元素都不是线程安全的如果要使用线程安全可以Collections.synchronizedSet()TreeSet的主要功能用于排序LinkedHashSet的主要功能用于保证FIFO,即有序的集合(先进先出)HashSet只是通用的存储数据的集合插入速度: HashSetLinkHashSetTreeSet(内部实现排序)HashSet不保证顺序LinkHashSet保证FIFO(先进先出)TreeSet安装内部实现排序也可以自定义排序规则HashSet和LinkHashSet允许null, (只能有一个null) 但TreeSet中插入null时会报NullPointerException3. Listlist的实现类有ArrayList,Vector,LinkedList...其中ArrayList和Vector很相似均是以数组作为底层实现不同之处在于Vector是线程安全的。ArrayListArrayList基于数组实现,不是线程安全的,内部维护了一个可变长的对象数组,集合内所有元素存储于这个数组中并实现该数组长度的动态伸缩。ArrayList使用数组拷贝来实现指定位置的插入和删除。LinkedListLinkedList内部以链表的形式来保存元素因此随机访问集合时性能较差但插入,删除元素时性能较好。LinkedList不仅实现了List接口,还实现了Deque接口可以被当成双端队列来使用即可被当成“栈”来使用也可以当成队列使用。ArrayList 和LinkedList比较两者都是List接口的实现类,都不是线程安全。List的另外一个实现类vector是线程安全的。ArrayList是基于动态数组的数据结构而LinkedList是基于链表的数据结构。对于随机访问get和set(查询操作)ArrayList要优于LinkedList.(LinkedList要移动指针)对于增删操作(add和remove)LinkedList优于ArrayList。4. MapMap集合用于保存映射关系的数据Map集合中保存了两组值一组是 key 一组是 value。Map的key不能重复。key和value之间存在单向一对一的关系 通过key能找到唯一确定的value。Map将key和value封装至一个叫做Entry的对象中Map中存储的元素实际是Entry。只有在keySet()和values()方法被调用时Map才会将keySet和values对象实例化。HashMapkey 是通过hash表来存储value是通过链表来存储。HashMap将Entry对象存储在一个数组中并通过哈希表来实现对Entry的快速访问。 (通过key的哈希值计算Entry在数组中的index以此访问value) (拉链法解决hash碰撞)HashTable几乎和HashMap一样都是通过数组存储Entry以key的哈希值计算Entry在数组中的index用拉链法解决哈希冲突。二者最大的不同在于 Hashtable是线程安全的其提供的方法几乎都是同步的。ConcurrentHashMapConcurrentHashMap是HashMap的线程安全版提供比Hashtable更高效的并发性能。Hashtable 在进行读写操作时会锁住整个Entry数组这就导致数据越多性能越差。ConcurrentHashMap使用分离锁的思路解决并发性能其将 Entry数组拆分至16个Segment中以哈希算法决定Entry应该存储在哪个Segment。这样就可以实现在写操作时只对一个Segment 加锁大幅提升了并发写的性能。在进行读操作时ConcurrentHashMap在绝大部分情况下都不需要加锁其Entry中的value是volatile的这保证了value被修改时的线程可见性无需加锁便能实现线程安全的读操作。ConcurrentHashMap它不能保证读操作的绝对一致性。ConcurrentHashMap保证读操作能获取到已存在Entry的value的最新值同时也能保证读操作可获取到已完成的写操作的内容但如果写操作是在创建一个新的Entry那么在写操作没有完成时读操作是有可能获取不到这个Entry的。HashMap和HashTable,ConcurrentHashMap的区别三者在数据存储层面的机制原理基本一致HashMap不是线程安全的Hashtable是线程安全的能保证绝对的数据一致性ConcurrentHashMap 也是线程安全的使用分离锁和volatile等方法极大地提升了读写性能同时也能保证在绝大部分情况下的数据一致性。但其不能保证绝对的数据一致性在一个线程向Map中加入Entry的操作没有完全完成之前其他线程有可能读不到新加入的EntryHashTable不允许使用null作为key和value如果放入null将引发NullPointerException异常但HashMap可以使用null作为key或value(只能有一个key为null,可以多个value为null)。如果在遍历的同时修改HashTable的大小容易应发异常。可以用代替ConcurrentHashMap是HashMap的线程安全版提供比Hashtable更高效的并发性能end如果你觉得本文对你有帮助的话记得关注点赞转发你的支持就是我更新动力。
http://www.zqtcl.cn/news/771420/

相关文章:

  • 滨州做网站的wordpress如何添加商桥
  • 网站登录密码忘记网站开发营业执照申请
  • 电商网站设计思路音乐推广平台有哪些
  • 网站建设傲鸿网站链轮内有死链
  • 哪些网站可以做微商品牌宣传网站怎么不花钱做排名 知乎
  • 上传了网站源码怎么做wordpress加百度广告代码出问题
  • 哪些网站做推广vi设计说明模板
  • 杭州市建设工程造价管理协会网站攀枝花建设工程质量监督站投诉网站
  • 做网站推广送什么深圳的网站建设公司流程
  • 中国网站开发的前景制作公司主页网站
  • 在线画流程图的网站购物网站的设计与实现论文
  • 淘宝客cms网站建设K12网站怎么建设
  • 专业门户网站开发浙江省湖州艺术与设计学校官网
  • 企业网站搭建价格搭建平台的另一种说法
  • 网站开发框架桂林人论坛风姿摄影
  • 吉林省建设安全信息网站网站服务器和空间有什么区别
  • 百度制作网站怎么去掉2345网址导航
  • 深圳网站建设有限公司 2019哪些建材网站可以做宣传
  • 西安阿里云网站建设一建报名资格条件
  • 聊城网站优化wordpress循环该分类子分类
  • 帮网站做关键词排名优化创造网站需要多少钱
  • 广西网站建设推荐wordpress 宣布停止
  • 专注网站制作青岛景观设计公司排名
  • 安庆做网站网站代理建设网站观澜
  • 网站开发需求收集 模板cms做门户网站
  • dw网站首页的导航怎么做有大佬给个网址吗
  • 一个网站怎么做聚合洛可可设计公司贾伟
  • 什么是优化型网站网页设计作业在线网站首页
  • 关于网站建设广告词英文案例网站
  • 有哪些可以做策划方案的网站国家域名