美文网首页
集合相关面试题

集合相关面试题

作者: 佩佩691 | 来源:发表于2017-08-28 14:06 被阅读52次

集合相关面试题

  • HashMap的扩容机智

新建了一个HashMap的底层数组,长度为原来的两倍,而后调用transfer方法,将旧HashMap的全部元素添加到新的HashMap中,扩容是一个相当耗时的操作,因为它需要重新计算这些元素在新的数组中的位置并进行复制处理。因此,我们在用HashMap时,最好能提前预估下HashMap中元素的个数,这样有助于提高HashMap的性能。

  • HashMap可以存入Key为Null的键么

可以,如果存入为null的键,永远都放在table[0]的头节点的链表中。

  • HashMap中put值的时候如果发生了冲突,是怎么处理的?

JDK使用了链地址法,hash表的每个元素又分别链接着一个单链表,元素为头结点,如果不同的key映射到了相同的下标,那么就使用头插法,插入到该元素对应的链表。

  • HashMap与HashTable的区别
  1. 继承关系上:HashTable是继承的Dictionary类,HashMap是实现的Map接口,所以HashTable老一点
  2. 线程安全方面:HashMap是线程不安全的,所以在速度方面比HashTable要快,JDK5之后引入ConcurrentHashMap,可以在多线程中使用,还可以使用
    Map m = Collections.synchronizeMap(hashMap);让HashMap同步
  3. 存值方面
    HashMap可以存入Key为null的键
  • ArrayList和Vector的区别
  1. ArrayList线程不安全,效率更高
  2. ArrayList容量不足是增加50%,Vector翻倍
  3. Vector可以设置增长因子,而ArrayList不可以

相关文章

  • [转]安卓面试题合集

    前几天整理了Java面试题集合,今天再来整理下Android相关的面试题集合.如果你希望能得到最新的消息,可以关注...

  • 阿里、腾讯各个大厂最受欢迎面试题合集

    (长期更新)此贴用来收集Java相关的面试题集合,以及面试技巧 技术面试题推荐: 天猫面试题(含总结):线程池+并...

  • 集合相关面试题

    集合相关面试题 HashMap的扩容机智 新建了一个HashMap的底层数组,长度为原来的两倍,而后调用trans...

  • Java面试题收集

    (长期更新)此贴用来收集Java相关的面试题集合 115个Java面试题和答案——终极列表(上) 115个Java...

  • 06-[面试题答案]目录结构及相关命令笔试题集合-v2

    第1章 原题地址: [面试题 ]目录结构及相关命令笔试题集合https://www.jianshu.com/p/c...

  • 【009期】JavaSE面试题(九):集合之Set

    开篇介绍 大家好,我是Java面试题库的提裤姐,今天这篇是面试系列的第九篇,主要总结了JavaSE中集合相关面试题...

  • Java基础面试总结

    【面试汇总】Java面试题-1Java面试题-2 【集合】Java集合及concurrent并发包总结(转)Jav...

  • Collection

    参考地址:Java集合常见面试题集锦Java集合必会14问(精选面试题整理) Java中Collection和Co...

  • 10-Map 相关面试题(集合)

    注:源码系列文章主要是对某付费专栏的总结记录。如有侵权,请联系删除。 Map 在面试中,占据了很大一部分的面试题,...

  • 06-List 相关面试题(集合)

    注:源码系列文章主要是对某付费专栏的总结记录。如有侵权,请联系删除。 1 说说你对 ArrayList 的理解? ...

网友评论

      本文标题:集合相关面试题

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