详解 Hashtable

至于HashTable,本人只想说,除了它们各自的特点是截然相反外,其余性质 以及 用法和HashMap的性质几乎一样,

(有关Map集合的基本性质,请观看本人博文—— 《详解 Map集合》

HashTable:

特点

不允许插入null键 null值
线程安全,效率低


注意事项

注意 键 的类型是否重写了equals()方法
(是否录入是靠 已存在HashMap集合中的键值对的 键要录入的键值对的 键equals()的返回值

  • 返回true,则 用新键值对覆盖旧键值对
  • 返回false,则 直接录入新键值对)

首先本人先来验证下HashTable不能插入null键 null值 :
本人给出一个错误的测试类:

package about_hashtable;

import java.util.Hashtable;

public class Test {
	
	public static void main(String[] args) {
		Hashtable<String, String> hashTable = new Hashtable<>();
        hashTable.put(new String("古巨基"),"s001");
        hashTable.put(new String("张根硕"), "s002");
        hashTable.put(new String("吴孟达"), "s003");
        hashTable.put(null, null);

        System.out.println(hashTable.values());
	}
	
}

现在,本人来展示下运行结果:
在这里插入图片描述
上图验证了—— HashTable不能插入null键 null值


那么,本人再来给出一个修改后的测试类,来展示下HashTable的使用:

package about_hashtable;

import java.util.Hashtable;

public class Test {
	
	public static void main(String[] args) {
		Hashtable<String, String> hashTable = new Hashtable<>();
        hashTable.put(new String("古巨基"),"s001");
        hashTable.put(new String("张根硕"), "s002");
        hashTable.put(new String("吴孟达"), "s003");

        System.out.println(hashTable.values());
	}
	
}

现在,本人再来展示下运行结果:
在这里插入图片描述

那么,有关HashMap的基本知识点也就这些了。

(有关Map集合的基本性质,请观看本人博文—— 《详解 Map集合》
(本人 集合框架 的总集篇博文链接:https://www.cnblogs.com/codderYouzg/p/12416560.html

posted @ 2020-03-04 22:35  在下右转,有何贵干  阅读(161)  评论(0编辑  收藏  举报