`
hesihua
  • 浏览: 233810 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
社区版块
存档分类
最新评论

hashmap 和hashtable续一

    博客分类:
  • java
 
阅读更多

一、hashmap

1、hashmap是线程不安全的,hashmap是将key影射到value,一个key对应一个value,并且key不能重复,value可以重复。如果有重复的key值时,相同key值的最后一次存入的会覆盖掉前面的key值和value。hashmap可以有null的key值和null的value。

2、hashmap不是线程安全的,效率上高于hashset。

3、HashMap继承自Map接口

4、HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。因为contains方法容易让人引起误解。

二、hashtable

1、hashtable不允许有null的key和null的value。

2、hashtable是线程安全的,它的方法是Synchronize的

3、hashtable继承自Directory类

 

 

有序否


允许元素重复否


Collection




List




Set


AbstractSet




HashSet


TreeSet


是(用二叉树排序)


Map


AbstractMap



使用key-value来映射和存储数据,Key必须惟一,value可以重复

 

下面的这个链接就是上面的表格来源,http://www.cnblogs.com/taotaoblog/archive/2009/09/19/1569958.html

分享到:
评论

相关推荐

    HashMap和HashTable的区别和不同

    综上所述,`HashMap`和`HashTable`在多个方面存在差异。选择哪一个取决于特定的应用场景和需求: - 如果需要线程安全并且能够接受一定的性能损耗,可以选择`HashTable`。 - 如果追求更高的性能且可以自己处理线程...

    hashMap和hashTable的区别

    总体来说,`HashMap` 和 `HashTable` 在设计上有显著不同,选择哪一个取决于具体的应用场景。如果不需要线程安全,并且可能涉及 `null` 键或值的情况下,建议使用 `HashMap`;如果需要线程安全,或者希望使用早期的 ...

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

    1. HashMap和HashTable的区别是什么? 答案:HashMap不是线程安全的,而HashTable是线程安全的。HashMap允许存放null键和null值,而HashTable不允许存放null键和null值。 2. 如何在HashMap中避免哈希冲突? 答案:...

    Java集合专题总结:HashMap 和 HashTable 源码学习和面试总结

    Java集合专题总结:HashMap和HashTable源码学习和面试总结 本文总结了Java集合专题中的HashMap和HashTable,涵盖了它们的源码学习和面试总结。HashMap是一种基于哈希表的集合类,它的存储结构是一个数组,每个元素...

    HashMap与HashTable和HashSet的区别

    ### HashMap与HashTable和HashSet的区别 #### 一、概述 在Java集合框架中,`HashMap`, `HashTable` 和 `HashSet` 是三个重要的数据结构,它们分别实现了`Map`接口和`Set`接口,提供了不同的功能来满足不同的编程...

    HashMap与HashTable区别

    在Java编程语言中,`HashMap`和`HashTable`是两种非常重要的数据结构,它们都实现了`Map`接口,并提供了键值对的存储方式。这两种数据结构虽然相似,但在实现细节和使用场景上存在显著差异。下面将详细介绍`HashMap`...

    hashmap与hashtable区别

    在Java编程语言中,`HashMap`和`Hashtable`是两种非常重要的数据结构,它们都用于存储键值对。然而,在实际应用过程中,这两种数据结构有着本质的不同,下面将详细介绍这些差异。 #### 1. 历史背景及实现原理 - **...

    hashmap和hashtable的区别

    hashmap和hashtable的区别

    HashMap与HashTable的区别(含源码分析)

    - `HashMap`的插入、删除和查找操作平均时间复杂度为O(1),而`HashTable`由于需要同步,其操作复杂度理论上是O(n)。 4. 方法特性: - `HashTable`中的`containsKey()`, `containsValue()`, `put()`, `remove()`等...

    hashMap和Hashtable的区别1

    hashMap和Hashtable的区别1

    hashmap和hashtable的区别.docx

    HashMap 和 Hashtable 是 Java 集合框架中两个重要的映射数据结构,它们都实现了 Map 接口,但具有显著的差异。以下将详细介绍这两个类的主要区别: 1. 线程安全性: - HashMap 不是线程安全的,这意味着在多线程...

    11.HashMap和HashTable的区别.avi

    11.HashMap和HashTable的区别.avi

    HashMap和Hashtable的区别Java开发Jav

    HashMap和Hashtable的区别Java开发Java经验技巧共2页.pdf.zip

    经典讲解List和ArrayList和Vector和HashTable和HashMap区别

    在Java编程语言中,集合框架是处理对象数组的重要工具,其中`List`、`ArrayList`、`Vector`、`HashTable`和`HashMap`是五个关键的接口和类,它们各有不同的特性和用途。以下是这些概念的详细解释: 1. **List接口**...

    HashMap,HashTable,ConcurrentHashMap之关联.docx

    1. 线程安全性:HashMap 是非线程安全的,HashTable 是线程安全的。 2. 键和值的 null 值:HashMap 的键和值都允许有 null 值存在,而 HashTable 则不行。 3. 效率:HashMap 的效率比 HashTable 的要高。 HashMap ...

    HashMap,HashTable,LinkedHashMap,TreeMap的区别

    其中,HashMap, HashTable, LinkedHashMap, TreeMap 是四种常用的 Map 实现类,每种类都有其特点和用途。本文将对这四种 Map 实现类进行比较和分析。 HashMap HashMap 是 Java 中最常用的 Map 实现类,它根据键的 ...

    比较Vector、ArrayList和hashtable hashmap

    - HashMap 和 Hashtable 都实现了 Map 接口,HashMap 更快但不是线程安全的,而 Hashtable 是线程安全但较慢。WeakHashMap 则使用弱引用作为键,有助于防止内存泄漏。 - 在选择使用哪种数据结构时,需要考虑性能需求...

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

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

    Hashtable和HashMap的区别:

    1. **Hashtable**:作为 `Dictionary` 类的子类,`Hashtable` 是 Java 最早版本(JDK 1.0)中提供的一个用于存储键值对的标准类。它继承自 `Dictionary` 并实现了 `Map` 接口。 2. **HashMap**:`HashMap` 则是在 ...

    HashMap和HashTable的区别?但是如果想线程安全有想效率高?

    HashMap和HashTable的区别?但是如果想线程安全有想效率高?

Global site tag (gtag.js) - Google Analytics