`
xwood
  • 浏览: 103071 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Java基础----容器篇

阅读更多
一、Hashmap与Hashtable的区别
1.  java.util.Hashtable<K,V>继承java.util.Dictionary<K,V>类,同时实现java.util.Map<K,V>接口;java.util.HashMap继承java.util.AbstractMap抽象类,同时实现java.util.Map接口,但因为AbstractMap也实现了Map接口,所以HashMap的方法基本上都来自Map接口;
2.  Hashtable中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。即是说,在多线程应用程序中,不用专门的操作就安全地可以使用Hashtable了;而对于HashMap,则需要额外的同步机制。但HashMap的同步问题可通过java.util.Collections的一个静态方法得到解决:
Map Collections.synchronizedMap(Map m)

        这个方法返回一个同步的Map,这个 Map封装了底层的HashMap的所有方法,使得底层的HashMap即使是在多线程的环境中也是安全的。
3.  在HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。当get()方法返回null值时,即可以表示HashMap中没有该键,也可以表示该键所对应的值为null。因此,在HashMap中不能由get()方法来判断HashMap中是否存在某个键,而应该用 containsKey()方法来判断,并且HashTable中不允许存储null值。
分享到:
评论

相关推荐

    Java语言程序设计-基础篇-原书第8版

    ### Java基础语法 - **变量与数据类型**:Java支持多种数据类型,包括基本类型(如int、double、boolean)和引用类型(如String、数组、类)。变量用于存储数据,并在程序中使用。 - **控制结构**:包括条件语句...

    JAVA程序员必读--基础篇chm

    Java基础篇的学习通常涵盖以下几个关键知识点: 1. **Java概述**:Java是由Sun Microsystems(现已被Oracle收购)开发的面向对象的编程语言,以其“一次编写,到处运行”的跨平台特性闻名。它基于C++语言,但设计上...

    《剑指offer》Java基础-反射篇.pdf

    变化,需要更换不同的类实例化,频繁修改源...• 反射基础篇中,通常会涵盖上述内容,并在文末进行总结,帮助读者理解和掌握反射的核心概念和使用技巧。在面试或深入学习开源框架时,对反射的理解和运用是非常重要的。

    JAVA程序员必读--基础篇

    "JAVA程序员必读--基础篇"是一本专为Java初学者设计的教程,旨在帮助他们掌握Java编程的基础知识。这本书可能涵盖了从安装Java开发环境,到编写第一个“Hello, World!”程序的所有基础知识。 首先,让我们深入了解...

    Java语言程序设计-基础篇-进阶篇源码

    本资源包含了“Java语言程序设计-基础篇”和“Java语言程序设计-进阶篇”的全部源码,是学习和深入理解Java编程的理想资料。 在基础篇中,主要涵盖了以下知识点: 1. **Java简介**:Java的历史、特性,以及为什么...

    java程序员手札-基础篇-01

    【Java程序员手札-基础篇-01】涵盖了Java编程语言中的基础知识,这些知识点是每位Java程序员必须掌握的。...通过阅读和理解这些代码,你可以巩固和深化对Java基础知识的理解,同时在实际项目中更灵活地应用这些知识。

    整合Flex和Java--配置篇

    本篇文章将详细介绍如何配置Flex与Java进行交互,特别关注在Web工程中集成Flex特性的方法。 首先,我们要准备BlazeDS,它是Adobe提供的一个轻量级的服务器端组件,用于实现在Flex客户端与Java后台之间的消息传递。...

    Java语言程序设计-基础篇-中文ppt-第十二章.ppt

    Java语言程序设计中的第十二章主要探讨了图形用户界面(GUI)的基础知识,特别是使用Java进行GUI编程。GUI是用户与计算机系统交互的一种直观方式,Java提供了强大的API来支持这一功能,包括AWT(Abstract Window ...

    java答案 基础篇

    在学习Java基础时,可能还会涉及到IO流、线程、集合框架等内容。IO流用于读写文件、网络通信等操作,线程则使得程序可以同时执行多个任务。集合框架(如ArrayList, LinkedList, HashMap等)提供了一组接口和类,用于...

    Java编程-特效界面篇

    Java教程通常分为几个部分,包括基础语法、面向对象编程、异常处理、集合框架等,而“Java编程-特效界面篇”则专注于用户界面(UI)设计。在Java中,我们可以使用JavaFX和Swing这两个库来创建图形用户界面。虽然...

    整合Flex和Java--配置篇.pdf

    ### 整合Flex与Java——配置篇 #### 引言 随着互联网技术的发展,富互联网应用(RIA)逐渐成为一种趋势。Flex作为一种优秀的RIA开发工具,以其强大的界面设计能力和良好的用户体验受到开发者的青睐。而Java作为...

    Java语言程序设计-基础篇PDF

    尽管提供的文件内容与实际需求不符,但我将基于标题和描述中的信息来构建相关的Java基础知识。 ### Java语言程序设计-基础篇 #### 一、Java简介 Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems公司...

    Java语言程序设计-基础篇(原书第8版)原书代码_资料

    《Java语言程序设计-基础篇(原书第8版)》是一本深入浅出介绍Java编程的权威教材,由知名计算机科学家Daniel Liang撰写。这本书不仅覆盖了Java的基础知识,还包含了实践案例和丰富的学习资源,如代码示例、图像和音频...

    Java-核心篇.zip

    "Java-核心篇.zip"这个压缩包文件聚焦于Java多线程编程的核心概念,是Java学习者和开发者进阶的重要资料。其内容包括了Java实战经验与技术书籍的精华,旨在帮助读者深入理解并熟练掌握Java多线程编程。 Java多线程...

    Java语言程序设计 基础篇 第八版 带目录

    ### Java基础知识 - **基本语法**:包括数据类型、变量声明、控制结构(if语句、switch语句、循环等)。 - **面向对象编程**:介绍类与对象的概念,封装、继承、多态等面向对象编程的核心特征。 - **异常处理**:...

    Java语言程序设计-基础篇

    在"Java语言程序设计-基础篇"中,详细介绍了Java编程语言的基础知识,是初学者快速掌握Java编程技巧的指南。 基础语法是任何编程语言的核心,Java也不例外。它包括关键字、变量、数据类型、运算符以及控制流语句等...

    Java语言程序设计(基础篇-第6版)课后习题答案

    1. **Java基础知识**:Java是一种面向对象的编程语言,由Sun Microsystems(现为Oracle公司)开发,具有跨平台、健壮性、安全性等特性。基础篇通常会涵盖变量、数据类型、运算符、流程控制(如if语句、for循环、...

    完整版Java全套入门培训课件 Java基础 02-Java基础语法1(共35页).pptx

    本篇将深入讲解Java的基础语法,包括关键字、标识符、注释、常量和变量、运算符、语句、函数以及数组。 首先,Java语言的关键字是被语言本身预定义并具有特殊含义的单词,它们全都是小写的。例如,`class`用于定义...

Global site tag (gtag.js) - Google Analytics