`
javamaster
  • 浏览: 13571 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
最近访客 更多访客>>
社区版块
存档分类
最新评论

HashMap和Hashtable的区别_JAVA面试题及答案

阅读更多
HashMap和Hashtable的区别

答案:
HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。
HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。
HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为contains方法容易让人引起误解。
Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。
最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。
Hashtable和HashMap采用的hash/rehash算法都大概一样,所以性能不会有很大的差异。
分享到:
评论

相关推荐

    HashMap和HashTable底层原理以及常见面试题

    HashMap和HashTable底层原理以及常见面试题 HashMap和HashTable是Java中两个常用的数据结构,都是基于哈希表实现的,但它们之间存在着一些关键的区别。本文将深入探讨HashMap和HashTable的底层原理,并总结常见的...

    java面试题精讲视频MP4Java面试题11.HashMap和HashTable的区别

    java面试题精讲视频MP4Java面试题11.HashMap和HashTable的区别提取方式是百度网盘分享地址

    Java面试题11.HashMap和HashTable的区别.mp4

    Java面试题11.HashMap和HashTable的区别.mp4

    hashmap面试题_hashmap_

    总结,HashMap是Java编程中的基础工具,掌握其工作原理和常见面试题,不仅能帮助我们应对面试,更能提升在实际开发中的问题解决能力。深入理解HashMap,有助于我们更好地利用数据结构,提高代码的执行效率。

    九阴真经_Java面试题

    在Java面试中,常常会涉及到一系列核心概念和技术,这些知识点对于成为一名优秀的Java程序员至关重要。以下是对一些常见面试题目的详细解答: 1. **final, finally, finalize的区别** - `final`:这是一个修饰符,...

    java面试大全视频版

    Java面试题11.HashMap和HashTable的区别 Java面试题12.实现一个拷贝文件的工具类要使用字节流还是字符串 Java面试题13.线程的的实现方式?怎么启动线程?怎么区分线程? Java面试题14.线程并发库和线程池的作用 Java...

    最新Java面试题视频网盘,Java面试题84集、java面试专属及面试必问课程

    │ Java面试题11.HashMap和HashTable的区别.mp4 │ Java面试题12.实现一个拷贝文件的类使用字节流还是字符串.mp4 │ Java面试题13.线程的实现方式 怎么启动线程怎么区分线程.mp4 │ Java面试题14.线程并发库和线程池...

    120个Java经典面试题和答案

    Java作为一门广泛使用的编程语言...而提供的两个PDF文件,"120个Java经典面试题和答案(上)"和"120个Java经典面试题和答案(下)",无疑是复习和准备面试的宝贵资源,可以系统地解答和理解Java面试中可能出现的问题。

    java中级面试题(自己汇总)

    本文总结了Java中级面试题,涵盖了集合、HashMap、HashSet、HashTable、ConcurrentHashMap、红黑树、Java 8对HashMap的优化、LinkedHashMap、TreeMap、IdentityHashMap等知识点。 集合 * List和Set都是继承自...

    阿里java常考面试题及汇总答案.docx

    以下是一些基于题目给出的面试题所涵盖的关键知识点: 一、关于String、StringBuffer和StringBuilder的区别: - String是不可变对象,一旦创建就无法改变,这归因于其final类的特性,提供高效且安全的字符串操作。 ...

    Java面试题及答案(基础题122道)

    ### Java面试题及答案(基础题122道) #### 经典题目解析 ##### 题目一:Java基础知识概述 **问题描述**:简述Java语言的基础知识,包括对象值、类与对象的区别。 **解答**: 1. **对象值**:在Java中,对象是指...

    java面试题——详解HashMap和Hashtable 的区别

    HashMap 和 Hashtable 是 Java 中两种常用的哈希表数据结构,它们都是用来存储键值对的数据结构,但它们在设计和实现上有显著的区别。以下是对这两者差异的详细解释: 1. **线程安全性**: - `Hashtable` 是线程...

    2021年最新java面试题--视频讲解(内部培训84个知识点超详细).rar

    Java面试题11.HashMap和HashTable的区别 Java面试题12.实现一个拷贝文件的工具类要使用字节流还是字符串 Java面试题13.线程的的实现方式?怎么启动线程?怎么区分线程? Java面试题14.线程并发库和线程池的作用 Java...

    Java面试题和答案(122道基础题)

    ### Java基础面试题知识点梳理 #### 1. Java基本概念 - **类与对象:** 类是具有相同属性和行为的一组对象的模板或蓝图。对象则是类的一个实例。 - **封装:** 封装是一种将数据(变量)和操作这些数据的方法...

    Java面试题以及答案收集

    这份"Java面试题以及答案收集"涵盖了13个部分,旨在帮助Java开发者准备面试,增强对Java的理解。 1. **Java基础** - **数据类型**:Java有两大类数据类型——基本数据类型和引用数据类型。了解它们的区别以及各自...

    java面试题及答案.docx

    以下是一些基于给定的Java面试题的详细解释和知识点: 1. **Java内存溢出**: 内存溢出通常由Java虚拟机(JVM)中的不同区域使用过多内存引起。例如,` PermGen Space`溢出是因为加载了大量类或jar包;`Java Heap ...

    Java_英文面试题

    Java编程语言在面试中常常涉及各种技术点,包括序列化、布局管理器、同步机制、集合API、迭代器以及抽象类与接口的区别等。以下是对这些知识点的详细解释: 1. **临时变量(Transient Variable)**: - `transient...

    Java面试题及答案-一些简单的Java面试题及答案

    以下是对给定面试题的详细解答: 1. **接口与抽象类的区别**: - **接口(Interface)**:它是一个完全抽象的类型,只包含方法签名(无方法体),不包含字段(除了默认方法和静态方法)。接口用于定义行为规范,一...

    Java 经典面试试题 及答案 word文档s

    以上是Java面试中常见的问题和答案,涵盖了一些核心的概念,如类的继承、异常处理、集合框架以及并发和调试工具的使用。掌握这些知识点对于理解和编写高质量的Java代码至关重要。在实际面试中,面试官可能会深入探讨...

    java常见面试题及答案

    `HashMap`和`Hashtable`都是`Map`接口的实现,但有以下区别: - `HashMap`允许null键和null值,而`Hashtable`不允许。 - `HashMap`是非同步的,效率相对较高,适合单线程环境;`Hashtable`是同步的,适用于多线程...

Global site tag (gtag.js) - Google Analytics