java笔记目录

  • Map 与 HashMap的介绍
  • Map 增加元素实例
  • Map 删除元素实例
  • Map修改元素实例

Map 与 HashMap的介绍


Map 增加元素实例

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
import java.util.Set;public class MapTest {/*** 用来承装学生类型对象*/public Map<String, Student> students;/*** 在构造器中初始化students 属性*/public MapTest() {this.students = new HashMap<String, Student>();}/*** 测试添加:输入学生ID*/public void testPut() {Scanner console = new Scanner(System.in);int i = 0;while (i < 3) {System.out.println("请输入学生ID");String ID = console.next();//判断学生ID 是否被占用Student st = students.get(ID);if (st == null) {System.out.println("请输入学生姓名:");String name = console.next();Student newStudent = new Student(ID, name);students.put(ID, newStudent);System.out.println("成功添加学生:" + students.get(ID).name);i++;} else {System.out.println("学生ID 被占用");continue;}}}/*** 测试Map的keySet方法* @param args*/public void testKeySet() {// 通过keySet 方法,返回Map 中所有“键”的Set集合Set<String> keySet = students.keySet();// 取得students的容量System.out.println("总共有:" + students.size() + "个学生!");// 遍历keySet,取得每一个键,再条用get() 方法取得每一个键对应的valuefor (String stuId : keySet) {Student st = students.get(stuId);if (st != null) {System.out.println("学生:" + st.name);}}}public static void main(String[] args) {MapTest mt = new MapTest();mt.testPut();mt.testKeySet();}
}
请输入学生ID
1
请输入学生姓名:
tom
成功添加学生:tom
请输入学生ID
1
学生ID 被占用
请输入学生ID
2
请输入学生姓名:
jack
成功添加学生:jack
请输入学生ID
3
请输入学生姓名:
xiadao
成功添加学生:xiadao
总共有:3个学生!
学生:tom
学生:jack
学生:xiadao

Map 删除元素实例

 /*** 测试删除Map 中的映射* * @param args*/public void testRemove() {// 获取从键盘输入的待删除学生ID 字符串Scanner console = new Scanner(System.in);while (true) {// 提示输入待删除的学生IDSystem.out.println("请输入要删除的学生ID");String ID = console.next();Student st = students.get(ID);if (st == null) {// 提示输入的ID 不存在System.out.println("该ID不存在");continue;}students.remove(ID);System.out.println("成功删除学生:" + st.name);break;}}/*** 通过 entrySet 方法遍历Map* * @param args*/public void testEntrySet() {// 通过entrySet 方法,返回Map中所有键值对Set<Entry<String, Student>> entrySet = students.entrySet();for (Entry<String, Student> entry : entrySet) {System.out.println("取得键为:" + entry.getKey());System.out.println("对应的值为:" + entry.getValue().name);}}public static void main(String[] args) {MapTest mt = new MapTest();mt.testPut();mt.testKeySet();mt.testRemove();mt.testEntrySet();}
请输入要删除的学生ID
1
成功删除学生:tom
取得键为:2
对应的值为:jack
取得键为:3
对应的值为:cat

Map修改元素实例

 /*** 利用put方法修改Map中已有的映射*/public void testModify(){Scanner console = new Scanner(System.in);while (true) {System.out.println("请输入要修改的学生ID");String stuID=console.next();Student student=students.get(stuID);if (student==null) {System.out.println("该ID不存在! 请重新输入");continue;}System.out.println("当前学生ID,所对应学生为:"+student.name);System.out.println("请重新输入学生姓名:");String name=console.next();Student newStudent = new Student(stuID,name);students.put(stuID, newStudent);System.out.println("修改成功");break;}}
请输入要修改的学生ID
1
当前学生ID,所对应学生为:q
请重新输入学生姓名:
qq
修改成功

Java开发笔记(五)之集合框架 Map相关推荐

  1. 学习Java第二十五天--集合框架之集合嵌套案例

    Map集合和其它集合嵌套的案例.以及Map集合和Map集合嵌套的案例 案例1:Map和ArrayList的嵌套 案例2:Map和Map的嵌套 案例1:Map和ArrayList的嵌套 import j ...

  2. c++ map iterator 获取key_Java集合框架——Map接口

    第三阶段 JAVA常见对象的学习 集合框架--Map集合 在实际需求中,我们常常会遇到这样的问题,在诸多的数据中,通过其编号来寻找某一些信息,从而进行查看或者修改,例如通过学号查询学生信息.今天我们所 ...

  3. Java基础知识强化之集合框架笔记76:ConcurrentHashMap之 ConcurrentHashMap简介

    1. ConcurrentHashMap简介: ConcurrentHashMap是一个线程安全的Hash Table,它的主要功能是提供了一组和Hashtable功能相同但是线程安全的方法.Conc ...

  4. Java开发笔记(五十六)利用枚举类型实现高级常量

    前面介绍了联合利用final和static可实现常量的定义,该方式用于简单的常量倒还凑合,要是用于复杂的.安全性高的常量,那就力不从心了.例如以下几种情况,final结合static的方式便缺乏应对之 ...

  5. Java开发笔记(五十)几种开放性修饰符

    前面介绍子类继承父类的时候,提到了public(公共)和private(私有)两个修饰符,其中public表示它所修饰的实体是允许外部访问的:而private表示它所修饰的实体不允许外部访问,只能在当 ...

  6. (硅谷课堂项目)Java开发笔记4:前端基础知识(二)

    文章目录 (硅谷课堂项目)Java开发笔记4:前端基础知识(二) 一.NPM 1.NPM简介 1.1.什么是NPM 1.2.NPM工具的安装位置 2.使用npm管理项目 2.1.创建文件夹npm 2. ...

  7. Java 开发笔记 - wangEditor 编辑器图片上传

    Java 开发笔记 - wangEditor 编辑器图片上传 前言 转型 java 开发后入手的第一个项目,写写博客记录一下 该项目使用的是 sping boot + mybatis plus + t ...

  8. Java开发笔记(二十三)数组工具Arrays

    数组作为一种组合形式的数据类型,必然要求提供一些处理数组的简便办法,包括数组比较.数组复制.数组排序等等.为此Java专门设计了Arrays工具,该工具包含了几个常用方法,方便程序员对数组进行加工操作 ...

  9. Java开发人员可以从Spring框架中学到编程技巧

    毫无疑问,Spring Framework是最受欢迎的Java框架之一,通过提供依赖注入和控制反转等特性,可以轻松创建真实的企业级Java应用程序.但是,Spring不仅是一个DI和IOC框架.通过提 ...

  10. Java开发笔记XML报文的解析

    Java开发笔记XML报文的解析 前言 正文 代码示例 结语 前言 项目任务里需要解析xml报文. 于是开始着手学习相关知识,在查看了多篇博文后找到了一篇不错的,讲的很实用. 转载来源:Java开发笔 ...

最新文章

  1. 手机经常提示找不到服务器,经常出现找不到服务器是什么原因?什么网也打 – 手机爱问...
  2. vue项目部署到nginx
  3. hibernate教程--抓取策略
  4. ITK:计算灰度图像的梯度幅度
  5. 给新手程序员的一些建议
  6. android 跨应用,Android跨应用获取资源
  7. 改变你一生的五句话 (转)
  8. Linux——基础知识及命令
  9. 读《超级整理术》--对整理的思路
  10. 使用uniapp时十分方便的登录静态模板
  11. java获取本机ip和端口_java获取本机ip和端口
  12. 内网ip映射外网方法
  13. win10配置ffmpeg环境
  14. UE4-植被系统使用
  15. (CVPR-2022)AdaViT:用于高效图像识别的自适应视觉变换器
  16. Unity Shader之燃烧消散效果
  17. 【华人学者风采】林跃河 华盛顿州立大学
  18. RTX之——时间管理
  19. 无法连接到服务器的错误解决方案
  20. X86架构PC服务器等硬件设备

热门文章

  1. springboot aop的execution 表达式详解
  2. Zjh游戏(七)客户端网络消息处理中心的完善
  3. 八自由度垂向模型车辆悬挂参数优化
  4. Unity3D资源整理
  5. vendor/Export2Excel插件导出excel
  6. 感冒用药指南—小病自己看
  7. 和程序员大叔谈恋爱的甜甜甜甜甜 | 程序员有话说
  8. 从A76到A78——在变化中学习ARM微架构
  9. 小程序 获取不到微信用户信息
  10. Java项目登陆输入中文用户名报NullPointerException(空指针异常),输入英文登陆成功