• Java中关于HashMap的使用和遍历(转)


    Java中关于HashMap的使用和遍历

    分类: 算法与数据结构

    1:使用HashMap的一个简单例子

    [java] view plaincopy
     
    1. package com.pb.collection;  
    2.   
    3. import java.util.HashMap;  
    4. import java.util.Iterator;  
    5. import java.util.Set;  
    6. import java.util.Map.Entry;  
    7.   
    8. public class HashMapDemo {  
    9.   
    10.     public static void main(String[] args) {  
    11.           
    12.         HashMap<String, String> hashMap = new HashMap<String, String>();  
    13.         hashMap.put("cn", "中国");  
    14.         hashMap.put("jp", "日本");  
    15.         hashMap.put("fr", "法国");  
    16.           
    17.         System.out.println(hashMap);  
    18.         System.out.println("cn:" + hashMap.get("cn"));  
    19.         System.out.println(hashMap.containsKey("cn"));  
    20.         System.out.println(hashMap.keySet());  
    21.         System.out.println(hashMap.isEmpty());  
    22.           
    23.         hashMap.remove("cn");  
    24.         System.out.println(hashMap.containsKey("cn"));  
    25.           
    26.         //采用Iterator遍历HashMap  
    27.         Iterator it = hashMap.keySet().iterator();  
    28.         while(it.hasNext()) {  
    29.             String key = (String)it.next();  
    30.             System.out.println("key:" + key);  
    31.             System.out.println("value:" + hashMap.get(key));  
    32.         }  
    33.           
    34.         //遍历HashMap的另一个方法  
    35.         Set<Entry<String, String>> sets = hashMap.entrySet();  
    36.         for(Entry<String, String> entry : sets) {  
    37.             System.out.print(entry.getKey() + ", ");  
    38.             System.out.println(entry.getValue());  
    39.         }  
    40.     }  
    41. }  


    2:一个结合List和HashMap实现的例子

    [java] view plaincopy
     
    1. import java.util.Iterator;  
    2. import java.util.List;  
    3. import java.util.HashMap;  
    4. import java.util.ArrayList;  
    5. import java.util.Map;  
    6. import java.util.Scanner;  
    7. import java.util.Set;  
    8. import java.util.Map.Entry;  
    9. /** 
    10.  * 在不创建学生类的情况下,从键盘输入n个学生信息(学号,姓名,年龄), 
    11.  * 输入完成后,打印出各个学生信息 
    12.  * @author ccna_zhang 
    13.  * 
    14.  */  
    15. public class Assignment {  
    16.       
    17.     public static void main(String[] args) {  
    18.           
    19.         //定义保存学生信息的List,元素类型为HashMap  
    20.         List<HashMap<String, Object>> list = new ArrayList<HashMap<String, Object>>();  
    21.         Scanner input = new Scanner(System.in);  
    22.           
    23.         System.out.println("请输入学生的信息,y表示继续,n表示退出");  
    24.         while("y".equals(input.next())) {  
    25.             HashMap<String, Object> map = new HashMap<String, Object>();  
    26.             System.out.println("请输入学号");  
    27.             map.put("studentno", input.next());  
    28.             System.out.println("请输入姓名");  
    29.             map.put("name", input.next());  
    30.             System.out.println("请输入年龄");  
    31.             map.put("age", input.nextInt());  
    32.             list.add(map);  
    33.             System.out.println("请继续输入学生的信息,y表示继续,n表示退出");  
    34.         }  
    35.           
    36.         System.out.println("输入的学生信息为:");  
    37.         System.out.println("学生数量为:" + list.size());  
    38.           
    39.         Iterator<HashMap<String, Object>> it = list.iterator();  
    40.         int i = 1;  
    41.         while(it.hasNext()) {  
    42.             HashMap<String, Object> stuMap = it.next();  
    43.             System.out.print("第" + i + "个学生的信息为");  
    44.             System.out.println("学号:" + stuMap.get("studentno") + " ,姓名:" + stuMap.get("name") + " ,年龄:" + stuMap.get("age"));  
    45.         }  
    46.     }  
    47. }  
  • 相关阅读:
    密码系统的安全性
    liboqs-量子安全密码算法开源C库
    密码基础知识(1)
    同态加密
    NTL 库函数
    以太坊相关的区块链知识
    53字符流中第一个不重复的字符
    基础小知识总结
    52表示数值的字符串 记忆
    HIHOcoder编程总结
  • 原文地址:https://www.cnblogs.com/qingchen1984/p/4290508.html
Copyright © 2020-2023  润新知