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

深圳外贸营销型网站建设企业所得税税前扣除项目有哪些

深圳外贸营销型网站建设,企业所得税税前扣除项目有哪些,个体工商户查询,网站锚文本的内链建设一、hashmap简介 hashmap是Java当中一种数据结构#xff0c;是一个用于存储Key-Value键值对的集合#xff0c;每一个键值对也叫作Entry。 二、JDK7的HashMap1、JDK7时HashMap的数据结构 1、在JDK7之前#xff0c;hashmap底层采用数组链表的数据结构来存储数据 2、插入数据采…一、hashmap简介 hashmap是Java当中一种数据结构是一个用于存储Key-Value键值对的集合每一个键值对也叫作Entry。 二、JDK7的HashMap1、JDK7时HashMap的数据结构 1、在JDK7之前hashmap底层采用数组链表的数据结构来存储数据 2、插入数据采用头插法头插法效率更高不需要去遍历链表。插入结点后将头结点移到数组下标的位置 什么是头插法咱们看一副图你就了解了 每次都在头结点插入其余的节点依次往下挪。那么这样就会造成一个问题当扩容的时候对每个节点重新rehash。假设重新计算hash后孙悟空和孙尚香依然还是在一条链上但可能顺序变了变成孙尚香—孙悟空。而原来的孙悟空—孙尚香这个指针又没有断开这样就会形成环最终会导致死锁2、相关问题解答为什么hashmap的容量是2的幂次方 1、运算速度快至少比%取模运算块 2、(n - 1) hash当n为2次幂时会满足一个公式(n - 1) hash hash % n 3、采用(n - 1) hash来计算索引当n为2的幂次方的时候n-1转换成为二进制保证低位全是1 为什么JDK7中hashmap源码计算hashcode要右移 求索引位置时保证高位也能参与位运算。为了保证求出来的散列值均匀。如果计算出来的索引扎堆那么这就不算一个好的哈希算法 JDK7hashmap如何判断是否需要扩容 有两个条件。第一个是当前元素个数大于或等于阈值。第二个是当前数组table[i]!null Hashmap是线程不安全的 1.多线程环境下如果有多个线程同时对一个数据进行操作很有可能出现数据覆盖的情况。 2.扩容有可能发生死锁情况 hashMap允许key为null。如果key为null则默认把这个数据放在索引为0的位置处 三、JDK8的HashMap部分源码1、jdk8中hashMap数据结构 1、JDK8以后hashmap的底层数据结构由数据链表红黑树实现 2、jdk8以后插入数据采用尾插法。因为引入了树形结构总是要遍历的 当进行put操作的时候当链表的长度大于或等于8时会将链表转化为红黑树 在进行remove操作的时候当红黑树的节点个数小于或者等于6时会将红黑树转化为链表2、相关问题解答为什么使用红黑树而不使用其他的树形结构 hashMmap中不仅存在查询还存在修改的操作。红黑树的查询和修改效率处在链表和完全平衡二叉树之间 hashMap怎么设置初始值的大小 如果你在创建的时候没有设置初始值大小那么它的默认容量是16。 如果你设置了一个初始容量它会先进行一个判断判断这个值是不是2的次幂如果不是将会把容量转化成为2的次幂大小。比如说你设置的容量是27那么创建的HashMap实际容量是32。 jdk7和jdk8中HashMap的区别 1、jdk8中当链表长度大于8时会将链表转化成为红黑树 2、节点插入顺序不同jdk7采用头插法而jdk8采用尾插法 3、hash算法的简化 在jdk7中hash算法为    final int hash(Object k) {int h hashSeed;if (0 ! h k instanceof String) {return sun.misc.Hashing.stringHash32((String)  k);}h ^ k.hashCode();// This function ensures that hashCodes that  differ only by// constant multiples at each bit position have a  bounded// number of collisions (approximately 8 at  default load factor).h ^ (h 20) ^ (h 12);return h ^ (h 7) ^ (h 4);} 在jdk8中的hash算法为 static final int hash(Object key) {int h;return (key null) ? 0 : (h  key.hashCode()) ^ (h 16);} 为什么在jdk8中要简化hash算法jdk8之前之所以hash方法写的比较复杂主要是为了提高散列行进而提高遍历速度但是jdk8以后引入红黑树后大大提高了遍历速度继续采用复杂的hash算法也就没太大意义反而还要消耗性能因为不管是put()还是get()都需要调用hash() 4、扩容不同在jdk7中发生扩容它会把原来所有的元素重新计算hash。再插入到新的位置。而jdk8中则是直接copy过去要么位置不变要么位置更改为索引原数组长度
http://www.hkea.cn/news/14320828/

相关文章:

  • 如何做一名网站编辑建设本地端网站
  • 大学生网站建设与网页设计报告有关中国文明网联盟网站建设活动方案
  • 在猪八戒做网站有保障吗门户网站建设方案中信息公开
  • 沈阳模板 网站建设苏州网站建设2万起
  • 邯郸网站设计哪家好宁波正规优化seo公司
  • 微网站建设教学杭州哪个网站建设最好
  • 凡科做的网站如何绑定域名wordpress php慢
  • 做文交所的都有哪些网站电商网站建设网
  • 做网站要多少钱新乡拼多多网站
  • 购物网站建设的原理qq群推广
  • 徐州网站建设案例浙江国有建设用地出让网站
  • 音乐自助建站网站备案号的区别
  • 网站到期不续费公司邮箱价格
  • 采集网站会员用响应式做旧书网站
  • 学做网站需要多长时间网站建设的公司哪家强
  • 网站开发技术是什么网站平台建设方案书
  • linux建设网站江苏省住房和建设厅网站首页
  • wordpress应用镜像下载班级优化大师并安装
  • 网站建设一般需要什么功能网站开发的流程 知乎
  • 深圳企业网站定制免费psd图片素材网站
  • 网站建设推广费用山西定制网站建设电源
  • 网站设计应遵循的原则苏州建设工程公司网站
  • 手机网站大全网站150m网站空间流量大吗
  • 聊城定制型网站开发seo推广的常见目的有
  • 快速搭建网站信息库专门用于网页制作的软件
  • 风铃微网站怎么做网站定制技术
  • 常熟有没有做阿里巴巴网站商场网站模板
  • 帮人做兼职的网站吗成品网站管理系统
  • 网站前台和后台对接实例做网站团队的人员安排
  • 经典网站建设方案网站建设多久