为了账号安全,请及时绑定邮箱和手机立即绑定

为什么最后输出的有问题是什么方法调用错了还是?请大神们看看谢谢;额

为什么最后输出的有问题是什么方法调用错了还是?请大神们看看谢谢;额

拱白菜的猪001 2016-10-29 22:38:32
package com.imooc.collection; 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,判断是否被占用  * 若未被占用,则输入学生姓名,创建学生对象,并且添加到student中去  */ } public void testPut(){ //创建一个Scanner对象用来获取学生的ID和姓名 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-学生映射 students.put(ID,newStudent); System.out.println("成功添加学生:"+students.get(ID).name); i++; }else{ System.out.println("该学生ID已被占用!"); continue; } } }  /*   * 测试Map的KeySet方法   */ public void testKeySet(){ //通过KeySte方法,返回Map中所有键的的Set集合 Set<String> KeySet=students.keySet(); //取得Students中的容量 System.out.println("总共有:"+students.size()+"个学生!"); //遍历KeySet,取得每一个键,再调用get方法取得每一个键对应的value for(String stuId:KeySet){ Student st=students.get(stuId); if (st!=null) System.out.println("学生:"+Student.name); } } public static void main(String[] args) { // TODO 自动生成的方法存根\ MapTest mt=new MapTest(); mt.testPut(); mt.testKeySet(); } }
查看完整描述

2 回答

?
ziom

TA贡献948条经验 获得超1109个赞

最后输出有甚么问题,你的需求是啥?它输出的又是什么,说清楚一点

查看完整回答
1 反对 回复 2016-10-30
?
rookie2maven

TA贡献278条经验 获得超76个赞

自己调试


查看完整回答
反对 回复 2016-10-30
  • 2 回答
  • 0 关注
  • 1149 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信