工作中对于列表的输出最常用到是List,但也有ArrayList处理不了的情况,比如要根据日期对列表进行分类的情况,类似这样的界面:
引用
2011-3-7
标题1
标题2
标题3
2011-3-6
标题1
标题2
2011-3-5
标题1
标题2
标题3
标题4
这个时候不免要用到Map,HashMap和LinkedHashMap都是实现Map接口,区别在于HashMap并不是按插入次序顺序存放的,而LinkedHashMap是顺序存放的,看下面的例子:
public static void main(String[] args) {
Map<String,String> hashmap = new HashMap<String,String>();
Map<String,String> linkmap = new LinkedHashMap<String,String>();
for(int i=0;i<10;i++){
hashmap.put(""+i, ""+i);
linkmap.put(""+i, ""+i);
}
System.out.println("HashMap遍历输出:");
for(Entry<String,String> entry:hashmap.entrySet()){
System.out.print(entry.getKey()+" ");
}
System.out.println("");
System.out.println("LinkedHashMap遍历输出:");
for(Entry<String,String> entry:linkmap.entrySet()){
System.out.print(entry.getKey()+" ");
}
}
输出结果
引用
HashMap遍历输出:
3 2 1 0 7 6 5 4 9 8
LinkedHashMap遍历输出:
0 1 2 3 4 5 6 7 8 9
在日常的开发中,用到HashMap的情况非常多,LinkedHashMap较为少用,因为我们很少对MAP的顺序有要求。这里做个备注,当对顺序有要求的情况,我们就要用到LinkedHashMap
本文出自 “我的JAVA之路” 博客,请务必保留此出处http://mmqzlj.blog.51cto.com/2092359/550631
分享到:
相关推荐
- **性能**:尽管`TreeMap`提供排序功能,但它的时间复杂度通常是O(log n),因此在某些情况下可能比`HashMap`和`LinkedHashMap`慢。 #### 4. HashTable `HashTable`是一种古老的`Map`实现,它的设计是为了确保线程...
其中,HashMap, HashTable, LinkedHashMap, TreeMap 是四种常用的 Map 实现类,每种类都有其特点和用途。本文将对这四种 Map 实现类进行比较和分析。 HashMap HashMap 是 Java 中最常用的 Map 实现类,它根据键的 ...
HashMap和LinkedHashMap 描述 该项目提供了可在Node.js和浏览器上运行的HashMap和LinkedHashMap类。 它们都是像一样的简化实现 它使用改进的算法生成哈希。 这样可确保在所有铲斗上尽可能广泛地散布。 根据规范,...
在Java编程语言中,`HashMap`、`TreeMap`和`LinkedHashMap`都是`java.util.Map`接口的实现,它们提供了不同的数据存储和访问策略。本文将深入探讨这三种数据结构的特点、工作原理以及适用场景。 1. **HashMap** `...
### HashMap与HashTable的区别详解 #### 引言 在Java编程中,`HashMap`与`HashTable`作为两种常用的数据结构,...- 在大多数现代Java应用程序中,由于`HashMap`提供了更好的性能和灵活性,它成为了首选的数据结构。
总的来说,LinkedHashMap结合了HashMap的高效性和有序性的特点,适用于那些对元素顺序有特定需求但又希望保持高效性能的场景。在理解和使用时,需要注意其内部结构和排序方式,以便更好地利用其特性。
Map接口用于保存具有key-value映射关系的数据,常见的Map实现包括HashMap、TreeMap、HashTable和LinkedHashMap等。Queue是Java提供的队列实现。 本文总结了HashMap和HashTable的源码学习和面试总结,涵盖了它们的...
### hashMap和hashTable的区别 #### 一、简介与基本概念 `HashMap` 和 `HashTable` 都是 Java 集合框架中非常重要的数据结构,它们都实现了 `Map` 接口,用于存储键值对。尽管它们在功能上有很多相似之处,但在...
### HashMap介绍和使用详解 #### 一、HashMap的数据结构 HashMap是Java集合框架的一个重要组成部分,它实现了Map接口,能够存储键值对映射。...理解HashMap的工作原理对于优化Java程序的性能具有重要意义。
关于get()方法,它是用来从HashMap中获取与给定键关联的值。当调用get()方法时,同样会先计算key的哈希值,然后根据哈希值找到Entry数组中的对应位置。如果找到了一个Entry,且Entry中的key与给定的key相等,那么...
### HashMap与HashTable和HashSet的区别 #### 一、概述 在Java集合框架中,`HashMap`, `HashTable` 和 `HashSet` 是三个重要的数据结构,它们分别实现了`Map`接口和`Set`接口,提供了不同的功能来满足不同的编程...
### 关于HashMap的一些讨论 #### 一、HashMap概述 HashMap是一种非常重要的数据结构,在Java编程中扮演着核心角色。它是基于哈希表实现的Map接口的非同步版本,支持所有可选的操作,并允许使用null值和null键。...
在Java编程语言中,集合框架是处理对象数组的重要工具,其中`List`、`ArrayList`、`Vector`、`HashTable`和`HashMap`是五个关键的接口和类,它们各有不同的特性和用途。以下是这些概念的详细解释: 1. **List接口**...
HashMap的核心特点是其内部通过哈希函数来计算元素的存储位置,这使得查找、插入和删除操作的时间复杂度在平均情况下为O(1)。然而,由于哈希冲突的存在,最坏情况下时间复杂度可能达到O(n)。此外,HashMap不保证元素...
总结,HashMap是Java编程中的基础工具,掌握其工作原理和常见面试题,不仅能帮助我们应对面试,更能提升在实际开发中的问题解决能力。深入理解HashMap,有助于我们更好地利用数据结构,提高代码的执行效率。
在Java编程语言中,`Hashtable`和`HashMap`是两种非常重要的数据结构,它们都属于`Map`接口的实现类,用于存储键值对数据。尽管两者在功能上相似,但在实际应用中却存在显著差异。 #### 1. 历史与实现基础 `...
hashMap基本工作原理,图解分析,基础Map集合
1. 多线程环境下并发修改:在多线程环境下,如果多个线程同时对HashMap进行读写操作,可能会导致数据的不一致性和数据丢失。例如,当一个线程正在执行put操作时,另一个线程可能同时在进行get或remove操作,这可能...