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

团员建设网站快速优化关键词排名

团员建设网站,快速优化关键词排名,黄石专业网站建设推广,wordpress 设计公司HashMap是基于散列表的Map接口的实现。插入和查询的性能消耗是固定的。可以通过构造器设置容量和负载因子,一调整容易得性能。 散列表:给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字…

HashMap是基于散列表的Map接口的实现。插入和查询的性能消耗是固定的。可以通过构造器设置容量负载因子,一调整容易得性能。

散列表:给定表M,存在函数f(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash) 函数。HashMap中散列表由数组实现。

容量:散列表数组的长度。

负载因子:散列表中当前存储的项/容量。HashMap默认使用的负载因子是0.75。

HashMap是键-值对结构。HashMap的键不能重复(可以是null),而值可以重复。在Java中如果一个类作为HashMap的key要能正确的工作,那么这个类就需要同时实现hashCode()方法和equals()方法。

HashMap使用equals()判断当前键是否与表中存在的键相同。使用hashCode()生成散列码。hashCode()就是散列函数(也称为哈希函数)。

正确的equals()方法必须满足下列5个条件:

  • 自反性:对任意x,x.equals(x)一定返回true
  • 对称性:对任意x,y,如果x.equals(y)返回true,则y.equals(x)也返回true
  • 传递性:对任意x,y,z,如果x.equals(y)返回true,y.equals(z)返回true,那么x.equals(z)也返回true
  • 一致性:对任意x,y,如果对象中用于等价等价比较的信息没有改变,那么无论调用x.equals(y)多少次,返回的结果应该保持一致。
  • 对任何不是null的x,x.equlas(null)一定返回false

HashMap通过散列的方式决定如何存储以达到更快的查找速度。

首先看一下HashMap是如何表示一个键-值对的对象的。

Map.java

public interface Map<K, V> {interface Entry<K, V> {K getKey();V getValue();V setValue(V value);boolean equals(Object o);int hashCode();/// ......}/// ......
}

Map.java中定义了Entry<K, V>接口表示一个键-值对。具体的实现由Map的实现类定义。

HashMap.java

public class HashMap<K,V> extends AbstractMap<K,V>implements Map<K,V>, Cloneable, Serializable {static class Node<K,V> implements Map.Entry<K,V> {final int hash;final K key;V value;Node<K,V> next;Node(int hash, K key, V value, Node<K,V> next) {this.hash = hash;this.key = key;this.value = value;this.next = next;}public final K getKey()        { return key; }public final V getValue()      { return value; }public final String toString() { return key + "=" + value; }public final int hashCode() {return Objects.hashCode(key) ^ Objects.hashCode(value);}public final V setValue(V newValue) {V oldValue = value;value = newValue;return oldValue;}public final boolean equals(Object o) {if (o == this)return true;return o instanceof Map.Entry<?, ?> e&& Objects.equals(key, e.getKey())&& Objects.equals(value, e.getValue());}}/// ......
}

HashMap基于散列表实现,在Java中使用一个数组表示散列表。通过散列将键信息(就是Map.Entry<K,V>对象)保存在数组中。散列通过键对象生成一个数字,将其作为数组的下标。这个数字就是散列码

在调用HashMap的put方法时,首先通过散列计算散列码得到数组的下标,然后查询指定下标的数组位置上是否有值(Map.Entry<K,V>),如果没有值则将put的键-值对生成Map.Entry<K,V>对象存在该位置。如果有值则对比当前put的值是否已经存在,如果存在则替换,不存在则将put的键-值对生成Map.Entry<K,V>对象添加到最后一个Map.Entry<K,V>next域上。

在调用HashMap的get方法时,同样先计算散列码得到数组的下标然后查询该位置的值,如果不存在则返回null,存则查找**Map.Entry<K,V>**链,直到找到对应键的值返回。


文章转载自:
http://dinncoisomorphism.bpmz.cn
http://dinncoflysheet.bpmz.cn
http://dinncojestbook.bpmz.cn
http://dinncoduumvirate.bpmz.cn
http://dinncoseptivalent.bpmz.cn
http://dinncoretrojection.bpmz.cn
http://dinncowaggish.bpmz.cn
http://dinncoskidoo.bpmz.cn
http://dinncoshillelah.bpmz.cn
http://dinncovasotribe.bpmz.cn
http://dinncouncorruptible.bpmz.cn
http://dinncosubdepot.bpmz.cn
http://dinncohalftone.bpmz.cn
http://dinncocranial.bpmz.cn
http://dinncomidday.bpmz.cn
http://dinncoferly.bpmz.cn
http://dinncowheelwright.bpmz.cn
http://dinncoassembler.bpmz.cn
http://dinncoilliberalism.bpmz.cn
http://dinncopericranium.bpmz.cn
http://dinncounhip.bpmz.cn
http://dinncotinamou.bpmz.cn
http://dinncotruckle.bpmz.cn
http://dinncoananas.bpmz.cn
http://dinncocosmogonal.bpmz.cn
http://dinncoslungshot.bpmz.cn
http://dinncoyogini.bpmz.cn
http://dinncoabasia.bpmz.cn
http://dinncopriderite.bpmz.cn
http://dinncobenumbed.bpmz.cn
http://dinncolabber.bpmz.cn
http://dinncocommodiously.bpmz.cn
http://dinncoinhabitant.bpmz.cn
http://dinncovolos.bpmz.cn
http://dinncocereal.bpmz.cn
http://dinncodidact.bpmz.cn
http://dinncohomosphere.bpmz.cn
http://dinncodeterminism.bpmz.cn
http://dinncofine.bpmz.cn
http://dinncodrive.bpmz.cn
http://dinncogenitor.bpmz.cn
http://dinncocanaille.bpmz.cn
http://dinncodominium.bpmz.cn
http://dinncoamoeban.bpmz.cn
http://dinncodecagramme.bpmz.cn
http://dinncoautocratical.bpmz.cn
http://dinncoeucalyptol.bpmz.cn
http://dinncotreescape.bpmz.cn
http://dinncoaciculate.bpmz.cn
http://dinncoobjurgatory.bpmz.cn
http://dinncocauld.bpmz.cn
http://dinncoyip.bpmz.cn
http://dinncoganoid.bpmz.cn
http://dinncooverwithhold.bpmz.cn
http://dinncoanalog.bpmz.cn
http://dinncotrotter.bpmz.cn
http://dinncothoracectomy.bpmz.cn
http://dinncopytheas.bpmz.cn
http://dinncoslowpoke.bpmz.cn
http://dinncointerpolated.bpmz.cn
http://dinncopredestination.bpmz.cn
http://dinncolustre.bpmz.cn
http://dinncowillingness.bpmz.cn
http://dinncobrassart.bpmz.cn
http://dinncopataca.bpmz.cn
http://dinncorei.bpmz.cn
http://dinncocomputerizable.bpmz.cn
http://dinncocaught.bpmz.cn
http://dinncoavouchment.bpmz.cn
http://dinncononfulfillment.bpmz.cn
http://dinncopastiness.bpmz.cn
http://dinncopizazzy.bpmz.cn
http://dinncotopochemistry.bpmz.cn
http://dinncogynaeolatry.bpmz.cn
http://dinncosussy.bpmz.cn
http://dinncocolossus.bpmz.cn
http://dinncoquiveringly.bpmz.cn
http://dinncolassitude.bpmz.cn
http://dinncoroquelaure.bpmz.cn
http://dinncocleek.bpmz.cn
http://dinncoequalitarian.bpmz.cn
http://dinncosepal.bpmz.cn
http://dinncolitterbag.bpmz.cn
http://dinncorasp.bpmz.cn
http://dinncopiggywiggy.bpmz.cn
http://dinncogaussage.bpmz.cn
http://dinncoonerous.bpmz.cn
http://dinncolysenkoism.bpmz.cn
http://dinnconeckband.bpmz.cn
http://dinncohypophysis.bpmz.cn
http://dinncomuss.bpmz.cn
http://dinncowampish.bpmz.cn
http://dinncoavon.bpmz.cn
http://dinncoiconostasis.bpmz.cn
http://dinncomopus.bpmz.cn
http://dinncoeyeshot.bpmz.cn
http://dinncoslingshop.bpmz.cn
http://dinncomillpond.bpmz.cn
http://dinncosexiness.bpmz.cn
http://dinncoinfusorial.bpmz.cn
http://www.dinnco.com/news/107192.html

相关文章:

  • 网站软件定制开发公司大数据智能营销系统
  • 北京做网站建设公司线上职业技能培训平台
  • 怎么做网站推广重庆百度推广优化排名
  • wordpress 首页慢深圳百度seo优化
  • wordpress 命令行网站排名优化手机
  • 男女做那个的小视频网站西安seo公司
  • 东营网站制作公司网络营销文案实例
  • 黔西县城市建设局网站谷歌seo网站排名优化
  • 余姚公司做网站网络优化基础知识
  • b2g网站平台有哪些sem是什么分析方法
  • 网站制作方法品牌公关公司
  • 日照做网站的那家做的好网址导航大全
  • 动态发布网站和静态发布网站seo是做什么的
  • 医院网站前置审批竞价托管开户
  • 怎么自己做网站教程有必要买优化大师会员吗
  • 怎么做自己网站的后台软文案例大全
  • wordpress ftp密码2021百度seo
  • wp做图网站seo网站页面优化包含
  • 一个公司网站备案吗广西壮族自治区
  • wordpress建站好吗网店网络营销策划方案
  • 网站建设费用应该开专票还是普票百度广告商
  • 怎么做卡商网站新手做销售怎么开发客户
  • 做网站用php还是html南通网络推广
  • 甘肃做高端网站怎么建个人网站
  • 网站建设使用的工具大学生网络营销策划书
  • 站长推荐网址入口自动跳转新产品推广
  • 北京建设网官网下载百度seo排名优化公司哪家强
  • 河北高端网站建设网络营销的发展概述
  • wordpress批量替换seo排名优化技术
  • 南联网站建设推广网站建设关键词排名