为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Java入门第三季_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Java入门第三季

陈码农
难度入门
时长 5小时 0分
  • //通过indexOf方法来取得某元素的索引位置,如: if(coursesToSelect.contains(cr2)){ System.out.println("课程:"+cr2.name+"的索引位置为:"+coursesToSelect.indexOf(cr2)); }
    查看全部
  • Set集合的contains方法类似于List的,只是需要用的是student对象的courses(Set类型)的属性来调用contains方法,,如:student.courses.contains(cr2);
    查看全部
  • boolean containsAll<Collection<?> c> : 判断是否包含多个元素
    查看全部
  • 重写equals方法模板,如: @Override public boolean equals(Object obj){ if(this==obj){ return true; } if(obj==null) return false; if(!(obj instanceof Course)) return false; Course cr1=(Course)obj; if(this.name==null){ if(cr1.name==null) return true; else return false; }else{ if(this.name.equals(cr1.name)) return true; else return false; } } }
    查看全部
  • 因为有了一个含参的构造器,所以系统不会自动生成一个无参的构造器,但有时候我们需要所以在写一个。
    查看全部
  • 测试List的contains方法(查看是否包含某个对象),如: public void testListContains(){ //获取备选课程序列的第0个元素 Course cr1=coursesToSelect.get(0); //打印输出coursesToSelect是否包含cr1对象 System.out.println("取得课程:"+cr1.name); System.out.println("备选课程中是否包含课程:"+cr1.name +","+coursesToSelect.contains(cr1));//coursesToSelect.contains(cr1)为true //创建一个新的课程对象,ID和名称,与cr1对象完全一样 Course cr2=new Course(cr1.id,cr1.name); System.out.println("新创建的课程:"+cr2.name); System.out.println("备选课程中是否包含课程:"+cr2.name+","+coursesToSelect.contains(cr2));//coursesToSelect.contains(cr2)为false } //注意:coursesToSelect.contains(cr1);结果为boolean型
    查看全部
  • /*利用put方法修改Map中的已有映射 * */ public void testModify(){ //提示输入要修改的学生ID System.out.println("请输入要修改的学生ID:"); //创建一个Scanner对象,去获取从键盘上输入的学生ID字符串 Scanner input=new Scanner(System.in); while(true){ //取得从键盘中输入的学生ID String stuID=input.next(); //从students中查找该学生ID Student st1=students.get(stuID); if(st1==null){ System.out.println("该ID不存在!请重新输入!"); continue; } //提示当前对应的学生对象的姓名 System.out.println("当前ID的学生姓名为:"+st1.name); //提示输入新的该ID 下的学生姓名,来修改已有的映射 System.out.println("请输入新的学生姓名:"); String newName=input.next(); Student newst=new Student(stuID, newName); students.put(stuID, newst); System.out.println("已修改成功,新的名字为:"+newst.name); break; } }
    查看全部
  • /*通过entrySet方法来遍历Map * */ public void testEntrySet(){ //通过entrySet方法,返回Map中的所有键值对 Set<Entry<String, Student>> entrySet=students.entrySet(); for(Entry<String, Student> et1:entrySet){ System.out.print("对应的key值为:"+et1.getKey()); System.out.println(" 对应的值为"+et1.getValue().name); } }
    查看全部
  • 前提: public Map<String,Student> students; public MapTest(){ this .students=new HashMap<String,Student>(); } 测试删除Map中的映射,如: public void testRemove(){ //获取从键盘输入的待删除学生的ID字符串 Scanner input=new Scanner(System.in); while (true){ //提示输入待删除的学生ID System.out.println("请输入要删除的学生的ID!"); String ID=input.next(); //判断该ID是否有对应的学生对象 Student st1=students.get(ID); if(st1==null){ //提示输入的ID并不存在 System.out.println("该ID不存在"); }else{ students.remove(ID); System.out.println("已成功删除:"+st1.name); testKeySet();//这个方法为Map中实现遍历的方法 break; } } } //实现遍历,测试Map的keySet方法: public void testKeySet(){ //通过keySet方法,返回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("学生:"+st.name); } }
    查看全部
  • HashMap中的映射是无序的
    查看全部
  • 在public Map<String,Student> students;此前提下 students.put(inID, newStudent);//实现添加映射 //测试Map的keySet方法: //通过keySet方法,返回Map中的所有“键”的Set集合 Set<String > keySet=students.keySet(); //取得students的容量 students.size(); //遍历keySet,取得每一个键,再调用get方法取得每个键对应的value for(String stuId:keySet){ Student st =students.get(stuId); if(st!=null) System.out.println("学生:"+st.name); }
    查看全部
  • 根据定义的Map类型的key 与value的类型,可以通过put方法添加映射,如: students.put(inID, newStudent);
    查看全部
  • Map类型的定义,如: public Map<String,Student> students; Map类型的实例化,如: this .students=new HashMap<String,Student>();
    查看全部
  • 打印 调用的方法实质是打印方法的返回值
    查看全部
  • try...catch...finally执行顺序: 正常运行:try...finally顺序执行 抛出异常:try...catch...finally顺序执行,并且try语句块中异常语句后的未执行代码语句不再跳转回来执行 含有return语句执行顺序: 1)执行try...catch,给返回值赋值 2)执行finally 3)return 在这三个语句块中出现return,代表该语句块到此执行结束,return后面有语句eclipse会报错。 finally是程序无论正常还是异常都会执行的语句块,若finally中含有return语句,会覆盖之前return语句对返回值的赋值
    查看全部

举报

0/150
提交
取消
课程须知
此部分为 Java 课程的进阶内容,适合具有一定 Java 基础的伙伴们学习,如果您是新手,建议您移步 《Java入门第一季》 和 《Java入门第二季》,在理解并掌握面向对象相关知识后再回来进修。
老师告诉你能学到什么?
本课程将学习 Java 中的异常处理、集合框架、字符串、常用类等,逐步学习掌握 Java 高级技术。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!