`
DanielHan
  • 浏览: 57457 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
074641d7-eb86-343f-a745-65a0f693edb5
设计模式
浏览量:7382
社区版块
存档分类
最新评论

java集合-Map

阅读更多
Map采用键(Key)--值(Value)对的方法,Key是不允许重复的,Value是允许重复的。Map中存放的对象是一对一对的,它的key可以看作Set集合,因此我们查找Map元素时,必须要通过迭代器来查找它的key值,它也是接口,只能由实现子类来实现,常用的有HashMap,HashTable

HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable。可能你觉得HashTable很好用,为什么不用呢?这里简单分析他们的区别。
1.HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。
2.HashTable不允许null值(key和value都不可以),HashMap允许null值(key和value都可以)。
3.HashTable有一个contains(Object value),功能和containsValue(Object value)功能一样。
4.HashTable使用Enumeration,HashMap使用Iterator。

Map循环遍历的几种方法:
1.通过Map.keySet()遍历key和value(有一个二次取值的过程,所以并不推荐 )
public static void main(String[] args) {
	Map<String,Object> map=new HashMap<String,Object>();
	map.put("a", "a");
	map.put("b", "b");
	map.put("1", "1");
	for(String key:map.keySet()){
		System.out.println(key+":"+map.get(key));
	}
}


2.通过Map.entrySet()遍历key和value
public static void main(String[] args) {
	Map<String,Object> map=new HashMap<String,Object>();
	map.put("a", "a");
	map.put("b", "b");
	map.put("1", "1");
	Set<Entry<String,Object>> set=map.entrySet();
	for(Entry<String,Object> entry:set){
		System.out.println(entry.getKey()+":"+entry.getValue());
	}
}


3.通过Map.entrySet()使用iterator()遍历key和value
public static void main(String[] args) {
	Map<String,Object> map=new HashMap<String,Object>();
	map.put("a", "a");
	map.put("b", "b");
	map.put("1", "1");
	Iterator<Entry<String,Object>> iterator=map.entrySet().iterator();
	while(iterator.hasNext()){
		Entry<String,Object> entry=iterator.next();
		System.out.println(entry.getKey()+":"+entry.getValue());
	}
}
分享到:
评论

相关推荐

    java集合类list-set-map.doc

    java集合类list-set-map.doc

    Crazy-JAVA-mind-map.zip_Crazy JAVA mind map_crazy_java-mindmap_m

    这份"Crazy-JAVA-mind-map.zip"压缩包包含了一个名为"Crazy JAVA mind map.mmap"的思维导图文件,这个导图就是对《疯狂JAVA讲义》内容的高度概括和逻辑梳理,旨在帮助学习者更好地理解和记忆书中的知识点。...

    java集合体系结构完结篇-Map集合

    java集合体系结构完结篇-Map集合

    Java集合类List-Set-Map的区别和联系.doc

    Java 集合类 List-Set-Map 的区别和联系 Java 集合类 List、Set 和 Map 是 Java 语言中最基本的集合类,它们之间存在着紧密的联系和区别。在本文中,我们将对 Java 集合类 List、Set 和 Map 的区别和联系进行详细的...

    java版list-map实现 树结构 父子结构 通俗易懂

    此java类实现了对数据表的分类递归树的实现,为本人倾力之作,后期,会发布js版,敬请期待!

    易语言仿java集合 list map源码

    本主题聚焦于易语言中的面向对象编程,特别是模仿Java集合框架的List和Map接口的实现。这些数据结构在编程中扮演着核心角色,用于组织和管理数据。 首先,让我们深入了解易语言的面向对象编程概念。面向对象编程...

    JSP应用开发-Java集合类-Map接口.pptx

    总的来说,理解并熟练运用Java集合框架中的Map接口及其实现,对于JSP应用开发来说至关重要。正确选择和使用这些类可以帮助我们编写出高效、可维护的代码。在实际项目中,应根据具体需求和场景来决定使用哪种集合类型...

    线程-线程池-锁-集合-Map-队列.docx

    集合是Java中存储数据的主要工具,包括List、Set和Map等。`HashMap`在不同JDK版本间可能存在差异,例如在JDK 7及之前,`HashMap`是非线程安全的,而在JDK 8中进行了优化,引入了红黑树提高性能。`ConcurrentHashMap`...

    java-集合-知识点汇总

    Java集合可以分为两大类:Collection和Map。 Java集合的类型 Java集合有多种类型,常见的有ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等。 * ArrayList:是一个基于数组的列表实现,支持随机...

    java 集合----Map、Collection

    Java集合框架是编程中不可或缺的一部分,它提供了多种数据结构,如列表(List)、集(Set)以及映射(Map),便于我们高效地存储、管理和操作数据。本文将深入探讨Map和Collection接口,以及它们的实现类,特别是HashSet和...

    java集合-练习题.pdf

    本篇资源摘要信息主要讲解 Java 集合框架的相关知识点,包括 Collection 接口、List 接口、Set 接口、Map 接口的特点和区别,以及 ArrayList、LinkedList、Vector 等实现类的使用和区别。 一、Collection 接口的...

    java集合MAP三种遍历

    `Map`接口是Java集合框架的一部分,它提供了基于键值对的数据存储方式。常见的实现类包括`HashMap`(无序)、`LinkedHashMap`(有序)、`TreeMap`(排序)等。Map的主要方法包括`put`、`get`、`remove`、`...

    java-遍历map

    `Map`接口是Java集合框架的一部分,它提供了存储和检索唯一键对象及其对应的值对象的方法。一个`Map`中不能包含重复的键:每个键最多只能映射到一个值。`Map`的主要实现类有`HashMap`、`TreeMap`、`LinkedHashMap`、...

    Java-list-set-map.zip_Java list

    本资料“Java list set map.zip”专注于讲解这些接口及其相关实现,帮助开发者深入理解Java集合类的使用。 首先,`List`接口是有序的集合,允许元素重复。它提供了按索引访问元素的能力,类似于数组。`ArrayList`和...

    【IT十八掌徐培成】Java基础第11天-04.Map集合-集合整理.zip

    在IT领域,尤其是在Java编程中,Map集合是一个至关重要的数据结构。Map集合不同于List或Set,它不存储单一元素,而是存储键值对(key-value pairs)。在Java中,Map接口是所有映射类型的父接口,它定义了映射的基本...

    Java基础----集合类汇总

    本文将深入探讨Java集合类的汇总,包括List、Set和Map这三大核心接口及其实现类。 首先,让我们从List接口开始。List是一种有序的集合,允许有重复元素,并且支持通过索引来访问元素。ArrayList和LinkedList是List...

    JAVA基础-集合

    本文旨在深入解析JAVA集合的基础概念、核心类以及它们的使用场景,帮助读者更好地理解和掌握JAVA集合。 #### 字符串与String类 字符串在JAVA中被视为一个不可变的对象,由`java.lang.String`类表示。这意味着一旦...

    大学课程讲义-Java基础-Java集合.pptx

    Java 集合类可以分为 Set、List 和 Map 三种体系,分别用于存储无序、不可重复的集合、有序、可重复的集合和具有映射关系的集合。 Collection 接口是 Java 集合框架的核心接口,定义了基本的集合操作方法,如 add...

    java笔记--集合类

    综上所述,Java集合类如`List`、`ArrayList`、`Map`和`HashMap`提供了丰富的数据处理能力,而哈希函数及其应用则为数据安全和完整性校验提供了强大的支持。理解和掌握这些核心概念,对于编写高效、安全的Java应用...

Global site tag (gtag.js) - Google Analytics