package com.itheima.d8_map_test;import java.util.HashMap;
import java.util.Map;
import java.util.Random;/*** 需求:统计投票人数*/
public class MapTest1 {public static void main(String[] args) {//1.把88个学生选择的数据拿进来。String[] selects = {"A", "B", "C", "D"};StringBuilder sb = new StringBuilder();Random r = new Random();for (int i = 0; i < 80 ; i++) {sb.append(selects[r.nextInt(selects.length)]);}System.out.println(sb);//2、定义一个Map集合记录最终统计的结果:A=30  B=20 C=20 D=10Map<Character,Integer> infos = new HashMap<>();//3.遍历80个学生选择的数据for (int i = 0; i < sb.length(); i++) {//4.提取当前选择经典字符char ch = sb.charAt(i);//5.判断Map集合中是否存在这个键if(infos.containsKey(ch)){//让其值+1infos.put(ch ,infos.get(ch) + 1);}else{//说明此景点第一次被选infos.put(ch , 1);}}System.out.println(infos);}
}


package com.itheima.d9_map_impl;import com.itheima.d1_set.Student;import java.util.HashMap;
import java.util.Map;public class HashMapDemo1 {public static void main(String[] args) {//Map集合是根据键去除重复元素Map<Student, String> maps = new HashMap<>();Student s1 = new Student("无恙",20,'男');Student s2 = new Student("无恙",20,'男');Student s3 = new Student("周雄",22,'男');maps.put(s1,"北京");maps.put(s2,"上海");maps.put(s3,"广州");System.out.println(maps);}
}



package com.itheima.d9_map_impl;import com.itheima.d1_set.Apple;import java.util.Comparator;
import java.util.Map;
import java.util.TreeMap;public class TreeMapDemo3 {public static void main(String[] args) {Map<Integer, String> maps1 = new TreeMap<>();maps1.put(13,"王麻子");maps1.put(1,"张兰");maps1.put(3,"县长");System.out.println(maps1);//TreeMap 集合自带排序。 可排序  不重复(只要大小规则一样就认为重复)  无索引Map<Apple, String> maps2 = new TreeMap<>(new Comparator<Apple>() {@Overridepublic int compare(Apple o1, Apple o2) {return Double.compare(o2.getPrice() , o1.getPrice()); //按照价格降序升序!}});maps2.put(new Apple("红富士","红色",9.9,500),"山东");maps2.put(new Apple("绿富士","绿色",8.9,400),"福建");maps2.put(new Apple("黄富士","黄色",7.9,300),"广西");maps2.put(new Apple("橙富士","橙色",6.9,500),"上海");System.out.println(maps2);}
}

黑马JAVA P138 Map集合案例、其他实现类相关推荐

  1. 黑马程序员----------------java基础-----------------Map集合

     ------- <a href="http://www.itheima.com" target="blank">android培训</a ...

  2. java中Map集合、模拟斗地主洗牌发牌、JDK9对集合添加的优化

    1.1 Map集合概述 Map集合概述 Map==>映射(一个对应一个) Map是一个接口,只要实现了该接口的类都是双列集合. 双列集合每次存储元素时都需要存储两个元素,一个元素称为键,一个元素 ...

  3. 1.6 Java遍历Map集合

    Java遍历Map集合的四种方式 Map 集合的遍历与 List 和 Set 集合不同.Map 有两组值,因此遍历时可以只遍历值的集合,也可以只遍历键的集合,也可以同时遍历.Map 以及实现 Map ...

  4. java 定义map集合_java基础-Map集合

    java基础-Map集合 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Map集合概述 我们通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它 ...

  5. (10)Java泛型-Map集合-集合框架工具类-可变参数-静态导入

    -- 部分1.5新特性Java泛型-Map集合-集合框架工具类 泛型 概述: JDK1.5版本以后出现的新特性,用于解决安全问题,是一个类型安全机制. 对于泛型可以这样理解: 没有使用泛型时,只要是对 ...

  6. java写一个外网访问的接口_【JAVA基础】一个案例搞懂类、对象、重载、封装、继承、多态、覆盖、抽象和接口概念及区别(中篇)...

    0 前言 初学JAVA时,总会对一些概念一知半解,相互混淆,不明其设计的用意,如类.对象.重载.封装.继承.多态.覆盖.抽象类.接口概念.为便于理解和巩固,本文将基于一个案例及其变形,展现各个概念的定 ...

  7. java基础-Map集合、Collections集合、斗地主案例

    1.Map集合 1.1Map集合概述和特点 Map集合概述 interface Map<K,V> K:键的类型:V:值的类型 Map集合的特点 (1)键值对映射关系 (2)一个键对应一个值 ...

  8. Java之Map集合

    1.Map集合 1.1Map集合概述和特点[理解] Map集合概述 interface Map<K,V> K:键的类型:V:值的类型 Map集合的特点 双列集合,一个键对应一个值 键不可以 ...

  9. Java基础 Map集合

    主要内容 Map集合 教学目标 能够说出Map集合特点 使用Map集合添加方法保存数据 使用"键找值"的方式遍历Map集合 使用"键值对"的方式遍历Map集合 ...

最新文章

  1. Swift3中的 GCD
  2. codelite14中文语言包_Windows下CodeLite完美支持中文的正确设置方法
  3. java个人介绍代码_个人项目WC(Java)
  4. 防止UI界面被输入法遮挡(画面随输入法自适应)
  5. 程序猿修仙之路--数据结构之你是否真的懂数组?
  6. click js自动点击 vue_vue.js2.0点击获取自己的属性和jquery方法
  7. CVPR 2020 细粒度分类挑战赛冠军方案:数据增强+知识蒸馏,效果大幅提升
  8. 红黑树 键值_Java集合框架:红黑树概念、插入及旋转操作详细解读就问你会不会...
  9. 编程语言---自己常用网站整理
  10. 暴力破解(一)——python脚本暴力破解 加密的zip压缩文件
  11. Mitchell Baker:担任 Mozilla CEO 是我最艰难的职业
  12. 百度前端技术学院-精选笔记-1 HTML学习笔记
  13. oracle mysql认证考试流程_报考oraclemysql认证的考试流程是哪些
  14. 西门子atch指令详解_西门子plc指令中文详解
  15. C语言实现蔡勒公式求周几
  16. python 删除pdf页面_使用PyPDF2库对pdf文件进行指定页面删除操作
  17. 【企业微信SCRM系统】如何通过企业微信接受个人微信好友申请?
  18. HI3861学习笔记(17)——NFC标签NT3H1201使用
  19. 计算机屏幕节省电,电脑显示器如何省电
  20. 有趣python小程序系列之一

热门文章

  1. python批量将CAD中的每个图分别转化为对应的PDF(cad转pdf)
  2. 挡土墙lisp程序_基于Visual LISP与C#的水工挡土墙计算软件开发
  3. 代码随想录训练营day36
  4. 首届中国eBPF大会分享---基于eBPF的内核漏洞检测实践
  5. Educational Codeforces Round 105 (Rated for Div. 2) 题解
  6. CPU卡设计实例及程序设计(二十七)外部认证,卡和ESAM通用
  7. java基础代码题(终)
  8. android 英文语言设置字体,修改安卓ROM默认语言方法
  9. 大白话理解局域网以及局域网ip分配(有效引导篇)
  10. 2021-11-13 【Windows恢复,设备需要恢复,关键系统驱动丢失或包含错误】