美文网首页
主体概述

主体概述

作者: kindol | 来源:发表于2018-05-08 21:09 被阅读0次

Java的容器类主要由两个接口派生而出——Collection和Map:

ALL1.jpg ALL2.jpg

TreeMap实现了SortedMap接口,因而是有顺序的

Set、List、Queue继承了Collection接口

TreeMap是基于树的实现,HashMap,HashTable,ConcurrentHashMap是基于hash表的实现

HashMap与TreeMap区别:

  1. HashMap通过hashcode快速查找插入,TreeMap中所有的元素都保持着某种固定的顺序(实现了SortedMap接口),若需要得到一个有序的结果应该使用TreeMap
  2. 在Map 中插入、删除和定位元素,HashMap 是最好的选择。使用HashMap要求添加的键类明确定义了hashCode()和equals()的实现。而TreeMap没有调优选项,因为该树总处于平衡状态

HashTable与HashMap

散列集基本概述

java中,散列表用链表数组实现,每个列表被称为桶,想要获取表中对象的位置,需要先计算其散列码,然后与桶的总数取余,所得结果就是保存这个元素的桶的索引

如果散列表太满,就需要再散列(rehashed,重新计算散列值),创建一个桶数更多的表,并将所有元素插入到表中,丢弃原来的表。装填因子(load factor)就决定了何时对散列表进行再散列,默认值为0.75,表示超过表中75%的位置被填满的时候会进行再散列。

HashSet与TreeSet

HashSet没有顺序,TreeSet则有

队列相关

一些方法的区别

boolean add(E element)
boolean offer(E element)
如果队列没有满,则添加到尾部并且返回true;如果满了,第一个方法抛出IllegalStateException,第二个返回false

E remove()
E poll()
如果队列不空,删除并返回头元素;为空,第一个方法抛出NoSuchElementException,第二个返回null

E element()
E peek()
如果队列不空,返回头元素,但不删除;为空,第一个方法抛出NoSuchElementException,第二个返回null

优先级队列:

优先级队列没有对所有的元素进行排序,而是使用了堆(大顶堆或者小顶堆),典型使用优先级队列的示例是任务调度

相关文章

  • 主体概述

    Java的容器类主要由两个接口派生而出——Collection和Map: TreeMap实现了SortedMap接...

  • flv文件格式介绍

    目录 概述 flv文件主体结构 Tag介绍 开源的解析软件 参考阅读 1. 概述 flv(Flash Video)...

  • HTTP权威指南 【学习笔记】

    HTTP报文概述 起始行 start line 首部 header 主体 body URL 语法 URL语法结构 ...

  • Flume内部原理剖析

    一、概述 Flume将数据表示为事件,事件是非常简单的数据结构,具有一个主体和一个报头集合,事件的主体是一个字节数...

  • Flume Agent 内部原理概述

    一.概述 Flume将数据表示为事件,事件是非常简单的数据结构,具有一个主体和一个报头集合,事件的主体是一个字节数...

  • 商业计划书要点

    摘要 1、概述 2、目录 主体 1、市场介绍 *PEST分析(政治:如国家政策、经济:如中国的恩格尔系数、社会:全...

  • 坤林框架规范

    框架说明 概述 主体为单体架构,标准maven管理,多模块项目架构。 业务扩展 新项目直接复制拷贝基础框架,并新建...

  • Kml导出教程

    概述:基于PostGis生成Kml坐标文本,自定义样式 Kml文件结构说明 其中文档主体结构可拆分为 Docume...

  • html template

    概述包含完整头部信息和主体结构的HTML基础模板。 代码展示 使用方法通过右键另存为下载 template.htm...

  • TouchREtouch4.1.2

    系统要求:4.0+概述:TouchRetouch是一款简单的工具,让你突出照片主体,简单几步就能删除或复制物体。除...

网友评论

      本文标题:主体概述

      本文链接:https://www.haomeiwen.com/subject/uatgrftx.html