例子一:

import java.util.Map;

import java.util.Set;

import java.util.HashMap;

public class HashMapDemo1 {

publicstatic void main(String args[]){

User user1 = new User("001","Jack",12);

User user2 = new User("002","Marry",13);

User user3 = new User("003","Xiaoming",14);

User user4 = new User("004","Xiaofang",15);

HashMap one= new HashMap();

one.put(user1.getId(),user1);

one.put(user2.getId(),user2);

one.put(user3.getId(),user3);

one.put(user4.getId(),user4);

//键值对的个数

System.out.println(one.size());

//直接打印Map对象会打印Key的toString= value的toString

System.out.println(one);

//Key和value都是Object

User user = (User)one.get("002");

System.out.println(user);

//是否包含某个key

System.out.println(one.containsKey("122"));

//遍历

//遍历方法一 把Map集合中所有的Key都放入set集合中

/*然后遍历set集合,得到Key,通过key获取value

* */

Set set = one.keySet();

for(Object object: set){

String key = (String)object;

User u = (User)one.get(key);

System.out.println(key+" = "+u);

}

System.out.println("=====================");

//放入HashMap集合中的key,value其实都会被包装成

/*Map.Entry这个内部色属性

* 有一个键值对就存在一个Map.Entry的实例对象

* 通过entrySet()方法就可以把这些实例对象都放在Set集合中

* 遍历Set获取每个对象

* */

Set set1 = one.entrySet();

for(Object object:set1){

Map.Entry me = (Map.Entry)object;

System.out.println(me.getKey()+" = "+me.getValue());

}

}

}

例子二:

package corelesson;

import java.util.HashMap;

import java.util.Map;

import java.util.Set;

public class HashMapDemo2 {

public static void main(String[] args){

User u1 = new User("001","zhang",20);

User u2 = new User("002","xiaoming",21);

User u3 = new User("003","nihao",23);

HashMapusers = new HashMap();

users.put(u1.getId(),u1);

users.put(u2.getId(),u2);

users.put(u3.getId(),u3);

Set set = users.keySet();

for(String key:set){

System.out.println(key+"=="+users.get(key));

}

System.out.println("+++++++++++++++++++++++++++");

Set> set1 = users.entrySet();

for(Map.Entry me : set1){

System.out.println(me.getKey()+" = "+me.getValue());

}

}

}

例子三:

package corelesson;

import java.util.HashMap;

public class HashMapDemo3 {

public static void main(String[] args){

HashMap hm = new HashMap();

hm.put("x", 10);

hm.put("y", 20);

hm.put("x", 30);

//key相同 会覆盖之前的value key如何才能相同

/*注意equals和方法的实现和hashCode方法的实现

*

* */

System.out.println(hm);

System.out.println("=====================");

//计算每个字符出现的次数

String s = "abcdafdfdfdasfdfgrgfrgsafgrgtads";

/*

* 思路:拿到每个字符,作为key放入HashMap如果

* 如果map中不存在 那么put(key,1);

* 如果已经存在 那么put(key,value+1)

*

* */

HashMap hm1 = new HashMap();

for(int i = 0;i

String str = s.substring(i,i+1);

if(hm1.containsKey(str)){

hm1.put(str,hm1.get(str)+1);

}

else{

hm1.put(str, 1);

}

}

System.out.println(hm1);

}

}

java map 集合实例_Java之集合类【HashMap】【入门版,实例解析】相关推荐

  1. java map集合使用_JAVA中Map集合的使用举例

    首先创建一个Emp类,再将几个Emp对象添加到Map集合中. Emp的id作为Map的键,并将id为"005"的对象从集合中删除. package com.han; import ...

  2. java的集合应用_Java之集合类应用总结

    1.集合类类图 Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set ├HashSet ├TreeSet ├LinkedHa ...

  3. java map的理解_java中的hashmap理解

    Asp.net Boilerplate之AbpSession扩展 当前Abp版本1.2,项目类型为MVC5. 以属性的形式扩展AbpSession,并在"记住我"后,下次自动登录也 ...

  4. Java Map集合的详解

    参考自:Java Map集合的详解 (略有修改) 一,Map 如果程序中存储了几百万个学生,而且经常需要使用学号来搜索某个学生,那么这个需求有效的数据结构就是Map. Map是一种依照键(key)存储 ...

  5. Java Map集合面试题汇总

    转载自 Java Map集合面试题汇总 1. 你都知道哪些常用的Map集合? 2.Collection集合接口和Map接口有什么关系? 3.HashMap是线程安全的吗?线程安全的Map都有哪些?性能 ...

  6. (JAVA)Map集合

    package map.demo;import java.util.*;/*** @author Alina* @date 2021年09月25日 11:20 下午* 底层原理是哈希表,保证唯一性* ...

  7. java map集合排序的_Java对Map集合进行排序

    Java对Map集合进行排序 实现 Comparator 接口,重写compare方法,完成自定义排序 int compare(Object o1, Object o2) 返回一个基本类型的整型 如果 ...

  8. Java—Map集合详解(HashMap/Hashtable/LinkedHashMap/Properties/TreeMap/WeakHashMap/IdentityHashMap/EnumMap)

    关注微信公众号:CodingTechWork,一起学习进步. Map Map集合介绍   Map(也称为字典.关联数组)是用于保存具有映射关系的数据,保存两组值,key和value,这两组值可以是任何 ...

  9. java map集合详解_JAVA干货:Map 集合详解

    java.util.Map集合 Map集合的特点: 1.Map集合是一个双列集合,一个元素包含两个值(一个key,一个value) 2.Map集合中的元素,key和value的数据类型可以相同,也可以 ...

最新文章

  1. GPU与CPU交互技术
  2. 深度学习核心技术精讲100篇(四十二)-阿里妈妈深度树匹配技术演进:TDM->JTM->BSAT
  3. 静止的单摄像机无法得到像点的三维坐标详解
  4. [C++STL]C++实现stack容器适配器
  5. windows下集成maven+eclipse开发环境二:集成maven到eclipse,并使用nexus作为maven仓库...
  6. linux 调优系列(续)
  7. mysql建用户之后取消drop库权限
  8. Codeforces Round #656 (Div. 3) C. Make It Good
  9. android 数据持久化——I/O操作
  10. 电子科大计算机操作系统ppt,电子科大计算机操作系统实验报告级.docx
  11. 关于VB.NET 菜单栏ToolStripMenu 下拉菜单单选功能的实现
  12. USB Server应用于税控盘的远程集中管理
  13. 四级网络工程师笔记-操作系统(中)
  14. 23年哪些企业不能申报高企
  15. Cowboy 源码分析(十一)
  16. MYSQL ERROR 1130 (HY000) 的错误解决方案
  17. Linux安装CentOS7操作系统详细教程
  18. 怎样训练左右手协调_教你克服学钢琴时左右手协调的问题
  19. Python 两种POST请求的方式
  20. 如何获取UnrealEngine虚幻引擎的WebUI插件

热门文章

  1. VC++实现自定义切换按钮
  2. [转载] Python快速编程入门课后程序题答案
  3. [转载] python 时间sleep() 的方法
  4. [转载] 【python系列】numpy中的tile函数
  5. Thread 相关函数和属性
  6. _itemmod_description
  7. python3 验证用户名密码
  8. 实训|第七天横扫Linux磁盘分区、软件安装障碍附制作软件仓库
  9. 在VC中集成cURL
  10. ISO8583报文格式分析