`
tntxia
  • 浏览: 1507053 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

java HashMap的使用

阅读更多

Java中怎样遍历Map的所有的元素:

JDK1.4中

    view plaincopy to clipboardprint?
    <FONT color=#0000ff>Map map = new HashMap();

        Iterator it = map.entrySet().iterator();

        while (it.hasNext()) {

            Map.Entry entry = (Map.Entry) it.next();

            Object key = entry.getKey();

            Object value = entry.getValue();

    }</FONT>

    Map map = new HashMap();

        Iterator it = map.entrySet().iterator();

        while (it.hasNext()) {

            Map.Entry entry = (Map.Entry) it.next();

            Object key = entry.getKey();

            Object value = entry.getValue();

    }JDK1.5中,应用新特性For-Each循环

    view plaincopy to clipboardprint?
    Map m = new HashMap();

    for(Object o : map.keySet()){

        map.get(o);

    }

    Map m = new HashMap();

    for(Object o : map.keySet()){

        map.get(o);

    }返回的 set 中的每个元素都是一个 Map.Entry 类型。

    view plaincopy to clipboardprint?
    <FONT color=#0000ff>private Hashtable<String, String> emails = new Hashtable<String, String>();</FONT>

    private Hashtable<String, String> emails = new Hashtable<String, String>();  另外 我们可以先把hashMap 转为集合Collection,再迭代输出,不过得到的对象

    view plaincopy to clipboardprint?
     <FONT color=#0000ff>//方法一: 用entrySet()

       Iterator it = emails.entrySet().iterator();

       while(it.hasNext()){

        Map.Entry m=(Map.Entry)it.next();

        logger.info("email-" + m.getKey() + ":" + m.getValue());

       }

       // 方法二:jdk1.5支持,用entrySet()和For-Each循环()

       for (Map.Entry<String, String> m : emails.entrySet()) {

        logger.info("email-" + m.getKey() + ":" + m.getValue());

       }

       // 方法三:用keySet()

       Iterator it = emails.keySet().iterator();

       while (it.hasNext()){

        String key;

        key=(String)it.next();

        logger.info("email-" + key + ":" + emails.get(key));

       }

    // 方法五:jdk1.5支持,用keySEt()和For-Each循环

    for(Object m: emails.keySet()){

        logger.info("email-" + m+ ":" + emails.get(m));

       }
    </FONT>

     //方法一: 用entrySet()

       Iterator it = emails.entrySet().iterator();

       while(it.hasNext()){

        Map.Entry m=(Map.Entry)it.next();

        logger.info("email-" + m.getKey() + ":" + m.getValue());

       }

       // 方法二:jdk1.5支持,用entrySet()和For-Each循环()

       for (Map.Entry<String, String> m : emails.entrySet()) {

        logger.info("email-" + m.getKey() + ":" + m.getValue());

       }

       // 方法三:用keySet()

       Iterator it = emails.keySet().iterator();

       while (it.hasNext()){

        String key;

        key=(String)it.next();

        logger.info("email-" + key + ":" + emails.get(key));

       }

    // 方法五:jdk1.5支持,用keySEt()和For-Each循环

    for(Object m: emails.keySet()){

        logger.info("email-" + m+ ":" + emails.get(m));

       }

 

HashMap的插入

 

用HashMap类完成:

考号组成:学号+课程编号+系统日期 例如:s19303C2007723
分数:在0-10之间
考号作为键,分数作为值.
要求分别录入5名学员信息,统计5名学员中参加JAVA考试的平均成绩.

集合类这学的不是很好~尤其是HashMap类.希望大家多多帮忙~要详细过程
import java.util.HashMap;
import java.util.Iterator;

public class Test {
public static void main(String args[]) {
HashMap<String, Integer> map = new HashMap<String, Integer>();
map.put("s19303C2007723 ", 8);
map.put("s19303C2007724 ", 6);
map.put("s19303C2007725 ", 4);
map.put("s19303C2007726 ", 8);
map.put("s19303C2007727 ", 3);

int sum = 0;

for (Iterator<String> i = map.keySet().iterator(); i.hasNext();) {
String key = i.next();
int value = map.get(key);
sum += value;
}

System.out.println(sum / (double) 5);
}
}

 

 

 

分享到:
评论

相关推荐

    java HashMap原理分析

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

    Java HashMap类详解

    Java HashMap 类详解 本资源详细介绍了 Java 中的 HashMap 类,包括其实现机制、Hash 存储机制、集合存储机制等方面的知识点。 1. HashMap 和 HashSet 的关系 HashMap 和 HashSet 是 Java Collection Framework ...

    js 版 java hashmap

    JavaScript中的HashMap并不是内置的数据结构,但在许多开发场景中,我们需要实现类似Java中HashMap的功能,用于存储键值对数据。在JavaScript中,我们通常使用对象(Object)来模拟HashMap的行为,因为对象的属性名...

    JAVA hashmap 负载因子为什么是0.75,官方解释

    java hashmap 扩容因子为什么是0.75,官方给出的解释

    Java中HashMap的工作机制

    在Java中,HashMap是一种广泛使用的数据结构,它基于哈希表的Map接口实现。哈希表是一种通过哈希过程将键映射到特定位置的数据结构,该位置存储了键对应的值。在详细探讨Java中HashMap的工作机制之前,首先需要理解...

    Java SE程序 HashMap类

    Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序 HashMap类Java SE程序...

    Java-HashMap.rar_hashmap_java hashmap

    总的来说,理解并熟练使用`HashMap`对于Java开发者来说至关重要,因为它在数据存储和检索方面提供了高效且灵活的解决方案。在学习和使用`HashMap`时,不仅要掌握其基本用法,还要了解其内部工作原理,包括哈希函数、...

    java 使用web service读取HashMap里的数值

    ### Java使用WebService读取HashMap里的数值 #### 背景介绍 在Java开发中,`WebService`是一种常用的技术栈,用于实现不同系统间的通信。它允许应用程序之间通过标准的HTTP协议进行数据交换与方法调用,这对于...

    Java HashMap高难度面试题集锦解析Java HashMap面试题及答案解析-高难度

    Java HashMap 是一个非常重要的数据结构,它在面试中经常被问到,因为它涉及到许多底层实现细节和并发问题。以下是对给定的Java HashMap面试题的详细解析: 1. **HashMap的内部实现原理**: HashMap基于哈希表,...

    java hashmap 深度剖析,和hashmap 相关面试题

    java hashmap 深度剖析,和hashmap 相关面试题

    java中HashMap详解.pdf

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

    自定义map实现java的hashmap

    - 线程安全:Java中的HashMap不是线程安全的,如果在多线程环境下使用,需要考虑同步机制,如使用`Collections.synchronizedMap()`或者使用`ConcurrentHashMap`。 - 空值处理:键或值为null的情况需要特殊处理,...

    Java中用hashmap实现购物车

    Java语言使用hashmap实现向购物车添加删除修改商品,显示商品信息

    Java HashMap 如何正确遍历并删除元素的方法小结

    Java HashMap 遍历和删除元素方法小结 Java HashMap 是一种常用的数据结构,用于存储键值对儿,但是在遍历和删除元素时,需要注意一些特殊的情况,否则可能会出现异常或错误。本文将介绍 Java HashMap 遍历和删除...

    疫苗:Java HashMap的死循环

    Java HashMap的死循环原因分析 HashMap是Java中一种常用的数据结构,它提供了快速的查找、插入和删除操作。然而,在多线程环境中使用HashMap可能会导致死循环的问题。下面我们来分析HashMap的死循环原因。 首先,...

    java代码-使用java解决手写hashMap的源代码

    java代码-使用java解决手写hashMap的源代码 ——学习参考资料:仅用于个人学习使用!

    java-hashmap:Java HashMap的插图

    Java HashMap的插图 Java HashMap HashMap类使用哈希表来实现Map接口。 这样,即使对于大型集合,诸如get()和put()之类的基本操作的执行时间也可以保持恒定。 目录 插图1:使用put()方法在HashMap中创建和...

    利用Java的HashMap 改造C++ 的hash_map

    结合Java的HashMap中的一些优点,改进了C++ 的hash_map。 详细说明见我的博客:http://blog.csdn.net/mdj67887500/article/details/6907702

    java中HashMap,LinkedHashMap,TreeMap,HashTable的区别

    ### Java中HashMap, LinkedHashMap, TreeMap,HashTable的区别 在Java编程语言中,`Map`接口是集合框架中的一个重要组成部分,用于存储键值对。本文将详细分析四种常用的`Map`实现类:`HashMap`, `LinkedHashMap`, ...

Global site tag (gtag.js) - Google Analytics