【慕课笔记】第六章 JAVA中的集合框架(下) 第1节 学生选课——判断List中课程是否存在
2016-02-29 15:58
609 查看
第1节 学生选课——判断List中课程是否存在
List和Set判断是否包含某个元素的方法都是一样的
contains方法是将List或Set中的所有元素与obj执行equals方法。(关于equals的知识在第二季 U3 第7节中有)
重写equals
List和Set判断是否包含某个元素的方法都是一样的
contains方法是将List或Set中的所有元素与obj执行equals方法。(关于equals的知识在第二季 U3 第7节中有)
public void testListContains(){ //取得备选课程序列的第0个元素 Course course=coursesToSelect.get(0); System.out.println("取得课程"+course.name); System.out.println("备选课程中是否包含课程:"+course.name+","+coursesToSelect.contains(course)); //创建一个新的课程对象(与course拥有相同id和名称,但是对象不同) Course course2=new Course(course.id,course.name); System.out.println("新创建课程"+course2.name); System.out.println("备选课程中是否包含课程:"+course2.name+","+coursesToSelect.contains(course2)); //有时只知道课程名称,通过名称判断是否包含这门课程, //可通过for循环遍历名称,但是比较麻烦 //依然可以通过contains判断是否包含这门课程,重写equals方法即可。 }
重写equals
@Override public boolean equals(Object obj) { // TODO Auto-generated method stub if(this==obj) return true; if(obj==null) return false; if(!(obj instanceof Course))//判断类型 return false; //以上三条都满足则说明obj是Course类型且非空 Course course=(Course)obj; if(this.name==null){ if(course.name==null) return true; }else{ if(this.name.equals(course.name)) return true; else return false; } return true; }
相关文章推荐
- intent.putExtra()方法参数
- 深入字节码 -- 计算方法执行时间
- java学习笔记-java开发中的23种设计模式
- java, 创建字符串String
- java,创建字符串
- Spring事务配置的五种方式
- Java遍历二叉树实现--转载
- Failed on connection exception: java.net.ConnectException
- java下开发web后台
- Java解析properties
- java代码运行原理分析
- 在Eclipse中添加Servlet-api.jar的方法
- Java的异常处理
- 在Eclipse下配置基于Java的OpenCV开发环境[官网译本]
- 147. Insertion Sort List【M】Java
- eclipse一直报An internal error occurred during: "Building workspace". GC overhead limit exceeded
- java39.Socket通信------使用 Java 创建聊天客户端(未完待续。。。)
- myeclipse内存不足解决方案
- Java线程池
- Java 反射机制浅析