栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础面试总结

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础面试总结

文章目录
      • hashmap发生hash冲突了有什么解决办法
      • 泛型,谈谈你对泛型的理解

hashmap发生hash冲突了有什么解决办法
  1. 开放地址法 平方探测再散列
    如果发生冲突,放到(冲突+1平方)的位置,如果还发生冲突,就放到(冲突-1平方)的位置;如果还有人就放到(冲突+2平方)的位置,以此类推,要是负数就倒序数。
  2. 拉链法
    如果发生冲突,就继续往前一个元素上链接,形成一个链表,Java的hashmap就是这种方法。
  3. 再哈希
    如果发生冲突,就用另一个方法计算hashcode,两次结果值不一样就不会发生hash冲突;
泛型,谈谈你对泛型的理解
  • 泛型:允许在定义类、接口时指定类型形参,这个形参健在声明变量、创建变量的、创建对象的时候再确定的(即传入的实际参数类型,也可以称为类型实参)
  • 泛型出现的原因(即为什么要有泛型)
    在jdk1.5之前,集合类像ArrayList、linkList、Set存放的Object类型的,无法对存入的元素进行自检查,在取数据的需要对数据的强制转换,如果一旦集合中存入了不一致的类型,例如存放integer类型的集合中错误存放String类型,就会出现类型转化错误的异常
  • 泛型擦除和转换
    泛型信息只存在于代码编译阶段,在进⼊ JVM 之前,与泛型相关的信息会被擦除掉,专业术语叫做类型擦除。
  • 在类中定义的泛型在jvm中执行最终都是Object,即所有泛型在jvm中执行的时候,都是以Object对象存在的,加泛型只是一种代码的规范,避免在可开发过程再次强转。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/461892.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号