Hashtable使用
与HashMap的比较:
- Hashtable:
- 底层是一个哈希表,是一个线程安全的集合,是单线程的集合,速度慢
- 不可以存储空值空键
- HashMap:
- 底层也是一个哈希表,是一个线程不安全的集合,是多线程的集合,速度快
- 可以存储空值空键
Hashtable和Vector集合一样,在jdk1.2.版本之后,被更先进的集合取代了——HashMap和ArrayList。
但是,Hashtable的子类Properties依然使用,Properties集合是唯一和IO流结合的集合。
举例:
import java.util.HashMap;
import java.util.Hashtable;public class demo6HashTable {public static void main(String[] args){HashMap<String,String> map = new HashMap<>();map.put(null,"aaa");map.put("bbb",null);map.put(null,null);System.out.println(map);}
}
会输出
{null=null, bbb=null}
*null与null也算主键重复,只会出现一次
再看Hashtable
Hashtable<String,String> table = new Hashtable<>();map.put(null,"aaa");Hashtable<String,String> table1 = new Hashtable<>();map.put("bbb","aaa");Hashtable<String,String> table2 = new Hashtable<>();map.put(null,null);
会报错:空指针异常
Hashtable使用相关推荐
- 【STL源码剖析读书笔记】【第5章】关联式容器之hashtable
1.hashtable在插入.删除.搜寻操作上具有"常数平均时间"的表现,不依赖输入元素的随机性. 2.hashtable通过hashfunction将元素映射到不同的位置,但当不 ...
- HashMap 和 Hashtable 的 6 个区别,最后一个没几个人知道!
HashMap 和 Hashtable 是 Java 开发程序员必须要掌握的,也是在各种 Java 面试场合中必须会问到的. 但你对这两者的区别了解有多少呢? 现在,栈长我给大家总结一下,或许有你不明 ...
- java 中的 Enumeration 在Vector,Hashtable和web中的应用
public interface Enumeration<E> 实现 Enumeration 接口的对象,它生成一系列元素,一次生成一个.连续调用 nextElement方法将返回一系列的 ...
- 在C#中应用哈希表(Hashtable)
一,哈希表(Hashtable)简述 在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其 ...
- 调试JDK源码-Hashtable实现原理以及线程安全的原因
调试JDK源码-一步一步看HashMap怎么Hash和扩容 调试JDK源码-ConcurrentHashMap实现原理 调试JDK源码-HashSet实现原理 调试JDK源码-调试JDK源码-Hash ...
- C语言的HashTable简单实现
原文地址:http://blog.csdn.net/zmxiangde_88/article/details/8025541 HashTable是在实际应用中很重要的一个结构,下面讨论一个简单的实现, ...
- HashTable原理与实现
memcached中hashtable部分的源码,hash部分的源码主要分布在assoc.h/c.hash.h/c中,总得来说代码比较简单,这里就稍微介绍一下. hashtable通常包括哈希函数和解 ...
- JAVA - HashMap和HashTable
1. HashMap 1) hashmap的数据结构 Hashmap本质就是一个数组,只是当key值重复时,使用链表的方式来存储重复的key值(拉链法),注意:链表中存放的仍然是key值.如下图示: ...
- 一个古老的问题HashMap与Hashtable区别
HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable.可能你觉得HashTable很好用,为什么不用呢? ...
- 面试之Hashtable和ConcurrentHashMap
那么要如何保证HashMap的线程安全呢? 方法有很多,比如使用Hashtable或者Collections.synchronizedMap,但是这两位选手都有一个共同的问题:性能.因为不管是读还是写 ...
最新文章
- 阿里云云盾-风险识别-增强版模式发布
- python读文件路径-在Python中按路径读取数据文件的几种方式
- Spring event 使用完全指南
- C++学习笔记(八)——内联函数
- 【2017-02-20】C#基础 - 运算符//表格,示例,代码巩固练习
- java orika_常见Bean映射工具分析评测及Orika介绍
- python模块调用的用法_python模块怎么使用
- currenthashmap如何实现线程安全_Java的List如何实现线程安全?
- 华为手机助手上架流程_2019年各大安卓应用商店上架经验,含流程,物料,方法,建议收藏...
- Oracle 11g R1(11.1) Joins表连接
- html基础之select ,datalist与details的异同
- 【转】一个小妙招能让你在服装上省下好多rmb
- oracle日期处理完全版
- 海康监控设备如何修改IP地址
- 换硬币-零钱换成5分、2分和1分的硬币
- 坚果云和微云哪个好?谈谈我的使用感受
- 使用OFBIZ的理由和不使用OFBIZ的理由
- Android LiveData初识
- Opensuse 初学者使用指北?
- 算法设计与分析-习题-用生成函数求解递归方程f(n)=2f(n/2)+cn,f(1)=0
热门文章
- Archlinux笔记本发射热点create_ap
- 在SQL中修改数据库名称
- 2023年电工杯数学建模竞赛AB题思路代码论文资料汇总贴
- WPF 布局 - Grid, StackPanel, DockPanel, WrapPanel
- 获取本地与服务器地址
- 绿色债券数据集2016.01-2021.11年
- 硅芯思见:SystemVerilog中的packedarray和unpacked array
- 常用CASE工具介绍 (csnd.net)
- 今天开通了CNSD博客
- Mac安装软件时提示“文件已损坏,您应该将它移到废纸篓”解决办法(亲测有效)