提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、Map父接口
    • 1、使用步骤
  • 二、HashMap实现类
  • 总结

前言

提示:这里可以添加本文要记录的大概内容:

Map集合结构

Map接口的特点:
1.用于存储任意键值对(key-Value)
2.键:无序、无下标、不允许重复(唯一)
3.值:无序、无下标、允许重复


提示:以下是本篇文章正文内容,下面案例可供参考

一、Map父接口

特点:存储一堆数据(key-Value),无序,无下标,键不可重复,值可重复。
方法:

  • V put(K key,V value) //将对象存入集合中,关联键值。key重复则覆盖原值。
  • Object get(Object key) //根据键获取对应的值
  • Set //返回所有的key
  • Collection values() //返回包含所有值的Collection集合
  • Set<Map.Entry<K,V>> //键值匹配的Set集合

1、使用步骤

代码如下(示例):

package com.Map;import java.util.HashMap;
import java.util.Map;
import java.util.Set;/*
*Map接口的使用
* 特点: 1存储键值对 2键不能重复,值可以重复 3.无序*/
public class Demo01 {public static void main(String[] args) {//创建Map集合Map<String, String> map = new HashMap<>();//添加元素map.put("cn","中国");map.put("uk","英国");map.put("usa","美国");map.put("cn","zhongguo");System.out.println("元素个数"+map.size());System.out.println(map.toString());//删除元素
//        map.remove("usa");
//        System.out.println(map.toString());//遍历//1.使用keySet();//  Set<String> keyset=map.keySet();for (String key : map.keySet()){System.out.println(key+"***"+map.get(key));}// 2.使用entrySet();// Set<Map.Entry<String, String>> entries = map.entrySet();for (Map.Entry<String,String> entry :map.entrySet()){System.out.println(entry.getKey()+"----"+entry.getValue());}}
}

二、HashMap实现类

代码如下(示例):

package com.Map;
import java.util.HashMap;
import java.util.Map;
/*
*HashMap集合的使用
* 存储结构:哈希表(数组+链表+红黑树)
* 使用key可hashcode和equals作为重复*/
public class Demo02 {public static void main(String[] args) {//创建集合HashMap<Student ,String> students=new HashMap<Student,String>();//添加元素Student s1=new Student("张三",150);Student s2=new Student("王五",120);Student s3=new Student("小田",110);Student s4=new Student("小溪",150);students.put(s1,"北京");students.put(s2,"上海");students.put(s3,"山西");students.put(s4,"陕西");//  students.put(s4,"湖北");students.put(new Student("张三",150),"北京");System.out.println("元素个数: "+students.size());System.out.println(students.toString());//删除操作students.remove(s1);System.out.println("删除之后"+students.size());System.out.println(students.toString());//遍历for (Student key : students.keySet()){System.out.println(key.toString()+"***"+students.get(key));}for (Map.Entry<Student , String> entry :students.entrySet()){System.out.println(entry.getKey()+"*---*"+entry.getValue());}//判断System.out.println(students.containsKey(s2));System.out.println(students.containsValue("美国"));System.out.println(students.containsKey(new Student("王五",120)));}}---```java
package com.Map;import com.HashSet.Person;public class Student {private String name;private int stuNo;public Student(){}public Student(String name, int stuNo) {super();this.name = name;this.stuNo = stuNo;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getStuNo() {return stuNo;}public void setStuNo(int stuNo) {this.stuNo = stuNo;}@Overridepublic String toString() {return "Student [name=" + name + ",stuNo=" + stuNo + "]";}@Overridepublic int hashCode() {final int prime=31;int result = 1;result = prime * result+((name == null)? 0 :name.hashCode());result = prime * result +stuNo;return  result;}@Overridepublic boolean equals(Object obj) {if (this == obj) {return true;}if (obj == null) {return false;}if (obj instanceof Student) {Student p = (Student) obj;if (this.name.equals(p.getName()) && this.stuNo == p.getStuNo()) {return true;}}return false;}
}

总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了HashMap的使用,而Map提供了大量能使我们快速便捷地处理数据的函数和方法。

Map体系结构特点概述相关推荐

  1. java map映射_【Java】Map 映射接口 概述

    Map 映射接口 概述 Map是一个双列数据,存储K-V类型的数据 JDK1.2 - HashMap 是目前Map的主要实现类 JDK1.2 线程不安全的,效率高,可存储null的key和value ...

  2. Nvidia CUDA初级教程4 GPU体系架构概述

    Nvidia CUDA初级教程4 GPU体系架构概述 视频:https://www.bilibili.com/video/BV1kx411m7Fk?p=5 讲师:周斌 本节内容: 为什么需要GPU 三 ...

  3. Java基础知识强化之集合框架笔记50:Map集合之Map集合的概述和特点

    1. Map集合的概述: 1 public interface Map<K,V> 作为学生来说,是根据学号来区分不同的学生的,那么假设我现在已经知道了学生的学号,我要根据学号去获取学生姓名 ...

  4. NVIDIA CUDA初级教程(P2-P3)CPU体系架构概述、并行程序设计概述

    文章目录 1.CPU体系架构概述 2.并行程序设计概述 1.CPU体系架构概述 现代CPU架构 CPU的定义 (1)执行指令.处理数据的器件:完成基本的逻辑和算术指令 (2)内存接口.外部设备接口 ( ...

  5. Java集合框架概述(四)——Map体系集合与底层实现原理

    一.Map父接口 1.概要 方法 描述 public interface Map<K,V> 将键映射到值的对象. 一个映射不能包含重复的键; 每个键可以映射到最多一个值.  将键映射到值的 ...

  6. 学习java的第三十三天,Map集合的概述、Map接口的使用

    一.Map集合概述 Map接口的特点: 用于存储任意键值对(Key-Value) 键:无序.无下标.不允许重复(唯一的) 值:无序.无下标.可以重复 Map父接口的特点:存储一对数据(Key-valu ...

  7. Map集合的概述与特点,常用API及特有的三种遍历方式总结,带应用

    一.概述 Map集合是一种双列集合.由两部分组成. 键和值.称为键值对. Map集合分为: 示例: //1.创建一个Map集合对象 Map <String , Integer> maps ...

  8. linux启用dcb步骤,Linux DCB体系——简短概述

    本博文由Shyam Iyer和Ahmad Ali撰写. 当前的Linux 体系是多家供应商各自向Linux内核独立注入代码的结果.这些代码分别遵循各供应商的硬件策略,并由不同的维护人员提交到单独的子系 ...

  9. 集合框架学习笔记:Collection体系和Map体系、Collections工具类

    集合框架 Java是面向对象编程,万事万物皆"对象",为了方便对"对象"进行操作,需要对"对象"进行存储,而Java集合就是存储" ...

最新文章

  1. Windows Live Writer发布测试
  2. Google Mock(Gmock)简单使用和源码分析——简单使用
  3. 03-vue-router
  4. JS获取屏幕,浏览器,网页高度宽度
  5. .NET Core 2.1 正式发布
  6. 一文搞懂JVM架构和运行时数据区,全网最新
  7. 数据装载服务器_操作事项_06
  8. mysql execution plan_MySQL Execution Plan--NOT IN查询
  9. 井电双控智能缴费管理系统、水井管理、报警管理、费用管理、实时查询、信息配置、模块配置、智能报表、水表、抄表、井电、电表、用水分析、水电、灌溉用水、绿化用水、农业用水、智慧水电、水利
  10. 华为y220t android版本升级,华为 Y220T(移动版)救砖教程 救砖包 刷回官方系统支持OTA升级...
  11. 能上QQ微信,打不开网页
  12. 我的第一个HTML5游戏——打地鼠总结及源码
  13. 扫码点餐外卖配送小程序开发功能
  14. 论文笔记:图像分割——ExFuse DFN
  15. 基于反射实现的一个观察者模板
  16. ssm+Vue计算机毕业设计学科竞赛赛场安排系统(程序+LW文档)
  17. Python学习三: 爬虫高级技巧 与 模拟实战练习
  18. 上海到深圳的长途搬家认识到了农业民族和航海民族的差异
  19. React实战精讲(React_TS/API)
  20. 正大国际期货:智星在线交易平台是什么?提供哪些交易执行模式和订单类型?

热门文章

  1. 当当李国庆谈“刘强东案”:虽煞风景,但划得来
  2. HDU 1569 最大点权独立集
  3. 网站SEO站外建设速成手册,快速上排名、权重
  4. Web项目的页面跳转问题
  5. 猿创征文|MySQL入门到实战-基础篇
  6. Linux shell计算两个文件的交集,并集和差集
  7. Python 精品经典书籍下载
  8. olympicCTF-Misc-base64stego
  9. VC中CTreeView控件的使用
  10. 【原创】新韭菜日记55--20190412----各行业龙头股