Java集合框架基础——Map
来源:互联网 发布:2014年网络歌曲大全 编辑:程序博客网 时间:2024/05/16 17:38
集合Map的属性是,元素为键值对< key , value >,一对组成映射关系,且key具有唯一性。
/*假设以下类都已经导入了需要的包,假设已经定义了一个学生类Student具有id,name两个属性与各方法*///Map的添加方法public class MapClass { //装学生类型对象 public Map<String,Student> student; public MapClass() { this.student = new HashMap<String,Student>(); } //测试添加功能,输入学生ID,判断是否被占用,若无则输入姓名,创建新对象 public void putMap() { //Scanner来接收用户输入 Scanner console = new Scanner(System.in); int i=0; while(i<3) { System.out.println("please input student's ID:"); String ID = console.next(); //是否被占用 Student st = student.get(ID); if (st == null) { //提示输入学生姓名 System.out.println("please input student's name:"); String name = console.next(); //创建新的学生对象 Student newStudent = new Student(ID,name); //通过调用put()方法,添加ID-学生映射,ID具有唯一性 student.put(ID,newStudent); System.out.println(student.get(ID).name); i++ } else { System.out.println("error"); continue; } } }}
//Map的KeySet方法public class MapClass { //装学生类型对象 public Map<String,Student> student; public MapClass() { this.student = new HashMap<String,Student>(); } //keySet方法 public void keySetMap() { //通过keySet方法,返回Map中所有的“键”的set集合 Set<String> keySet = student,keySet(); //取得student的容量 System.out.println(student.size() + "个学生"); //遍历keySet,取得每一个键,再调用get()方法取得value for (String stuID : keySet) { Student st = student.get(ID); if (st != null) { System.out.println(st.name); } } }}
//删除Map中的映射public class MapClass { //装学生类型对象 public Map<String,Student> student; public MapClass() { this.student = new HashMap<String,Student>(); } //删除方法 public void removeMap() { //输入,获取学生ID Scanner console = new Scanner(System.in); while(true) { //若id类型为int,也可以用nextInt()接收 String ID = console.next(); //判断ID是否有对应的学生对象 Student st = student.get(ID); if(st == null) { //提示输入的ID不存在 continue; } student.remove(ID); System.out.println("成功删除学生"); break; } }}
//通过entrySet方法遍历Mappublic class MapClass { //装学生类型对象 public Map<String,Student> student; public MapClass() { this.student = new HashMap<String,Student>(); } //entrySet方法 public void entrySetMap() { //通过entrySet方法,返回Map中键的值 Set<Map.Entry<String,Student> entrySet = student.entrySet(); for(Map.Entry<String,Student> entry : entrySet) { System.out.println("取得键:"+entry.getKey()); System.out.println("对应的value为:"+entry.getValue().name); } }}
//使用put方法,修改Map中已有的映射public class MapClass { //装学生类型对象 public Map<String,Student> student; public MapClass() { this.student = new HashMap<String,Student>(); } //修改映射 public void modifyMap() { //提示输入修改学生的ID Scanner console1 = new Scanner(System.in); while(true) { //取得ID,若是int类型,可以使用nextInt() String stuID = console1.next(); //是否存在ID Student stu = student.get(stuID); if(stu == null) { System.out.println("error"); continue; } //提示当前对应学生对象的姓名 System.out.println("对应ID的学生名称:"+stu.name); //提示输入新的学生姓名,来修改已有的映射 Scanner console2 = new Scanner(System.in); String name = console2.next(); Student newStudent = new Student(stuID,name); student.put(stuID,newStudent); System.out.println("修改成功"); break; } }}
//Map中是否包含某个Key值或者某个value的值public class MapClass { //装学生类型对象 public Map<String,Student> student; public MapClass() { this.student = new HashMap<String,Student>(); } //方法 public void containsKeyOrValue() { //提示用户输入学生ID System.out.println("请输入学生ID:"); Scanner console1 = new Scanner(System.in); String id = console1.next(); //Map中,用containsKey()方法,来判断是否包含Key值 System.out.println("是否存在此ID:" + student.containsKey(id)); if(student.containsKey(id)) { System.out.println("对应的学生:"+student.get(id).name); } //提示输入学生姓名 System.out.println("请输入学生姓名:"); Scanner console2 = new Scanner(System.in); String name = console2.next(); //用containsValue()方法,判断是否包含Value值 if(student.containsValue(new Student(null,name))) { System.out.println("确实包含学生:"+name); } else { System.out.println("在学生映射表中不存在这个学生"); } }}
0 0
- Java集合框架基础——Map
- java基础<集合框架——Map集合>
- java基础——集合框架(List、Set、Map)
- 集合框架-MAP(java基础)
- Java集合框架—Map
- java基础-- 集合框架 之 Map集合
- Java基础--集合框架(Map集合)
- java基础集合框架——List、Set、Map概述(java集合一)
- java基础集合框架——List、Set、Map概述(java集合一)
- 黑马程序员——java基础——集合框架(二: 双列集合 (Map体系))
- 黑马程序员——JAVA基础------集合框架(四)----Map集合
- Java语言基础——06.集合框架(2)泛型和Map集合
- java语言基础(76)——集合框架(Map集合)
- Java集合框架4——Map
- Java集合框架——Map
- Java基础—集合框架
- 【java】集合框架和map基础
- Java基础---集合框架四(Map)
- 剑指offer--旋转数组的最小数字
- Android利用glide加载圆形图片,头像的实现
- android 错误 Plugin with id 'com.android.application' not found.
- Scrum敏捷开发简介(转载)
- 堆排序
- Java集合框架基础——Map
- centos 识别新增磁盘不停机扫描
- php 二维数组对称的方法
- 八大排序算法
- hibernate Restrictions开发总结
- Git系列使用GitHub托管项目
- 图解JDK7的Comparison method violates its general contract异常
- 如何用ABBYY把PDF转换Excel
- Rabbitmq学习之路2-rabbitmqctl