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

云南省红河州蒙自建设局网站狮山网站设计

云南省红河州蒙自建设局网站,狮山网站设计,最好的开发网站建设,站长平台验证网站74.HashMap Map接口常用实现类:HashMap、Hashtable和Properties HashMap是Map接口使用频率最高的实现类 HashMap是以key-value对的方式来存储数据 key不能重复,但是值可以重复,允许使用null健和null值 如果添加相同的key,会覆…

74.HashMap

  1. Map接口常用实现类:HashMap、Hashtable和Properties

  2. HashMap是Map接口使用频率最高的实现类

  3. HashMap是以key-value对的方式来存储数据

  4. key不能重复,但是值可以重复,允许使用null健和null值

  5. 如果添加相同的key,会覆盖原来的key

  6. 与HashSet一样,不保证映射的顺序,因为底层是以hash表的方式来存储的

  7. HashMap没有实现同步,因此线程是不安全的,方法没有做同步互斥的操作,没有synchronized

HashMap底层扩容机制:

  1. HashMap底层维护了Nod类型的数组table,默认为null

  2. 当创建对象时,将加载因子(loadfactor)初始化为0.75

  3. 当添加key-val时,通过key的哈希值得到在table的索引。然后判断该索引处是否有元素,如果没有元素直接添加。如果该索引处有元素,继续判断该元素的key是否和准入加入的key相等,如果相等,直接替换val;如果不相等需要判断是树结构还是链表结构,做出相应处理。如果添加时发现容量不够,需要扩容

  4. 第1次添加,则需要扩容table容量为16,临界值为12

  5. 以后再扩容,则需要扩容table为原来的2倍,临界值为原来的2倍,既24,以此类推

模拟HashMap触发扩容,树化情况

public class HelloJava {public static void main(String[] args) {HashMap hashMap = new HashMap();for (int i = 1;i <= 12;i++){hashMap.put(new A(i),"hello");}hashMap.put("aaa","bbb");System.out.println("hashMap=" + hashMap);}
}
​
class A{private int num;
​public A(int num) {this.num = num;}//所有的A对象的HashCode都是100@Overridepublic int hashCode() {return 100;}
​@Overridepublic String toString() {return "A{" +"num=" + num +'}';}
}
http://www.yayakq.cn/news/920053/

相关文章:

  • 做网站的qq兼职平面广告设计趋势
  • 排行榜哪个网站最好家具网站开发任务书
  • 网站访问统计怎么做网站推广的主流方法
  • c .net网站开发简单网站建设软件
  • 有专门做ppt的网站吗网站建设财务处理
  • 商丘网站制作电话公司注册地址怎么查
  • 北京网站设计联系方式大连网站优化步骤
  • 国外家具设计网站动态设计参考网站
  • 高校网站群管理系统wordpress随意更换主题
  • 动画网站欣赏如何用Python网站开发
  • 芜湖市公司网站建设哪家好如何增加网站内链建设
  • 网站为什么备案网页效果图素材
  • 广西建设科技协会网站首页校园网站建设价格
  • 二级域名怎么做网站备案wordpress 表单验证
  • 佛山网站建设专家什么是网络推广员
  • 网站制作公司智能 乐云践新谭木记网页制作教程
  • 苏州北京商场网站建设asp.net网站管理工具
  • 建设学院网站的通知书阜南县建设局网站
  • 购物网站建设流程个人简历模板免费网站
  • 网站核验点查询wordpress微商城模板下载
  • 建设部房地产网站新网站建设脑图
  • 建工教育网校官方网站做网站公司东莞
  • 济南网站建设正规公司中学网站系统源码
  • 百度网站优化外包网页制作是什么专业学的
  • 长沙网站建设外包微商城官网登录
  • dw+如何做自适应网站win7 iis配置本地网站
  • 柳州 网站建设做网站80端口
  • 仪征建设局网站佛山当地网站建设公司
  • 书店网站建设策划书总结亚马逊电商平台怎么入驻
  • 挪车网站开发2012服务器如何做网站