`
lzth
  • 浏览: 141035 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Hashmap使用

    博客分类:
  • Java
阅读更多
package base.map;

import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

/**
 * HashMap使用举例
 * 
 * @author pengch
 * 
 */
public class HashMapExample {

 public static void main(String[] args) {

  Map m1 = new HashMap();
  m1.put("Chinese", new Long(100000));
  m1.put("English", new Long(20000));
  m1.put("French", new Long(3000));
  m1.put("Korean", new Long(400));

  System.out.println("The HashMap holds " + m1.size() + " elements");

  System.out.println("The keys are:");

  // 因为Map的key不可能重复,所以,可以用Set数据结构来存储
  Set keySet = m1.keySet();
  Iterator ikey = keySet.iterator();
  while (ikey.hasNext()) {
   System.out.println("\t" + ikey.next());
  }

  System.out.println("The values are:");

  // 因为Map的值有可能重复,所以不能用Set,要用Collection
  Collection valueCol = m1.values();
  Iterator ival = valueCol.iterator();
  while (ival.hasNext()) {
   System.out.println("\t" + ival.next());
  }

  // 根据key,取出特定的值
  System.out.println("The value for Key \"Korean\" is "
    + m1.get("Korean").toString());
 }

}

分享到:
评论

相关推荐

    Rust 集合类型String, Vector, HashMap 使用详解

    ### Rust 集合类型String, Vector, HashMap 使用详解 #### 一、String 类型详解 **String** 是 Rust 中非常重要的数据结构之一,用于表示可变长度的 UTF-8 编码的文本字符串。Rust 语言设计时充分考虑了 Unicode ...

    HashMap介绍和使用

    Java中HashMap使用的哈希函数是基于键的哈希码进行计算。具体计算方式如下: ```java static int indexFor(int h, int length) { return h & (length - 1); } ``` 这里的`length`是指数组的长度,必须是2的幂。...

    Go-Go的hashmap使用加密随机种子散列提示开放寻址和罗宾汉哈希

    Go的HashMap不再使用简单的随机数,而是使用一个加密安全的伪随机数生成器来生成种子。这样做是为了防止恶意攻击者通过预测哈希值来探测或篡改HashMap的内容。加密随机种子确保了哈希函数的输出难以预测,增加了系统...

    HashMap总结

    1. 使用迭代器遍历:使用 iterator() 方法取得 HashMap 的迭代器,然后使用 hasNext() 和 next() 方法遍历 HashMap 中的元素。 2. 使用 foreach 遍历:使用 foreach 语句遍历 HashMap 中的元素。 HashMap 的常用...

    HashMap之resize()方法源码解读.docx

    HashMap之resize()方法源码解读 HashMap的resize()方法是HashMap...在resize()方法中,我们可以看到HashMap的扩容机制是如何工作的,并了解到HashMap使用了power-of-two expansion机制和threshold字段来记录扩容阈值。

    C++hashmap的使用实例

    在C++编程中,`hashmap`通常指的是`std::unordered_map`,它是一个关联容器,提供了基于哈希表的键值对存储。这个数据结构允许我们以接近常数时间的复杂度进行插入、查找和删除操作,极大地提高了程序的执行效率。...

    hashmap使用实例

    HashMap是Java编程语言中的一种重要数据结构,它在Android开发中同样被广泛使用。HashMap属于集合框架的一部分,提供了键值对(key-value pair)的存储功能。在这个实例中,我们将深入探讨HashMap的工作原理、基本...

    HashMap的数据结构

    为了解决这个问题,HashMap使用了链地址法,即在每个数组索引位置上存储一个链表,碰撞的键值对会被链接到同一个索引位置的链表上。 1. **哈希函数**:哈希函数是HashMap的核心,它的目标是将键转换为数组的索引。...

    Java中HashMap详解(通俗易懂).doc

    1. **哈希函数**:HashMap使用键对象的hashCode()方法生成哈希码,这个哈希码用于确定元素在内部数组中的位置。哈希函数的目标是尽可能地将不同的键映射到不同的桶,以减少冲突。 2. **哈希冲突解决**:尽管哈希...

    HashMap类.rar

    1. **哈希表**:HashMap使用哈希表来存储键值对。哈希表是一种数据结构,通过计算对象的哈希值来确定其在表中的位置,以便快速访问。 2. **键值对**:每个元素都由一个键(Key)和一个值(Value)组成,键不能重复...

    Hashmap详解

    HashMap 详解 HashMap 是一种常用的数据结构,在 Java 中,它是一个数组和链表的结合...通过深入探讨 HashMap 的数据结构和 put 方法的实现,我们可以更好地理解 HashMap 的工作原理,并更好地使用它来解决实际问题。

    hashmap.zip

    2. **哈希函数**:HashMap使用键对象的`hashCode()`方法生成哈希码,然后通过取模运算将哈希码映射到数组的索引位置。哈希函数的质量直接影响了冲突的可能性和性能。 3. **负载因子**:HashMap有一个名为`...

    java HashMap原理分析

    1. 哈希函数:HashMap使用哈希函数将Key转换为一个哈希码,然后根据哈希码将Key-Value对存储在数组中的特定位置上。 2. collisions处理:当两个不同的Key发生哈希碰撞时,HashMap会将它们存储在同一个链表中,在查找...

    深入arraylist,linkedlist,hashmap,hashset源码(2012/3/18)

    然而,当哈希冲突发生时,HashMap使用链地址法来处理,这可能导致链表过长,影响性能。HashMap的`put()`、`get()`和`resize()`方法是核心,理解它们的实现可以避免在实际使用中出现性能瓶颈。 HashSet是一个不包含...

    java中HashMap详解.pdf

    为了找到对应的数组位置,HashMap使用了indexFor()方法,该方法通过将散列值与数组长度减一进行按位与操作来得到索引值: ```java static int indexFor(int hash, int length) { return hash & (length - 1); } ``...

    05.HashMap相关面试题

    * 在 JDK 1.8 中,HashMap 使用数组+链表+红黑树来存储键值对,链表过长时,会将其转换为红黑树,以提高查询效率。 5. HashMap 的线程安全问题 HashMap 在多线程环境下使用时,需要注意线程安全问题,否则可能会...

    比较Vector、ArrayList和hashtable hashmap

    HashMap 使用哈希函数将键映射到桶中,这样可以快速定位到对应的值。HashMap 不保证映射的顺序,特别是它不保证这种顺序在多次迭代之后保持不变。HashMap 允许 null 键和 null 值,但每个键只能出现一次。HashMap ...

    面试必考之HashMap源码分析与实现

    当两个键的哈希值相同,导致冲突时,HashMap使用链地址法来解决,即将冲突的键值对链接成一个链表。 3. **哈希冲突处理** 在HashMap中,如果两个键的哈希值相同但并不相等,它们会在同一个桶(数组索引位置)形成...

    HashMap和HashTable底层原理以及常见面试题

    2. 性能:HashMap的性能比HashTable好,因为HashMap使用数组和链表来存储键值对,而HashTable使用链表来存储键值对。 3. null键:HashMap允许存放null键和null值,而HashTable不允许存放null键和null值。 常见面试...

    jQuery HashMap

    使用jQuery开发HashMap,包含一些基本的功能。

Global site tag (gtag.js) - Google Analytics