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

Java入门第三季

陈码农
难度入门
时长 5小时 0分
  • 一、判断是否包含某个Key值:containsKey() 二、判断是否包含某个Value值:containsValue() 1、同样是以每一个元素的value值的equals方法进行比较,所以需要重写value类的equals()方法来进行属性(某个)比较
    查看全部
  • 一、通过indexOf(Object o)获取索引位置。若没有返回-1 1、实现机制:集合表中每个元素遍历,通过equals()方法进行比较。(所以同样需要改写equals()) 2、若表中存在多个相同属性元素,则返回首个元素的索引位置。 二、通过lastIndexOf(Object o)是返元素回最后一个索引位置。若没有返回-1
    查看全部
  • 重写方法---单击右键->Source->HashCode和equals->勾选instanceof 在Object中定义了两种方法:equals方法和HashCode方法 1.List的contains方法 ①.需要重写equals方法 2.Set的contains方法 ①.在调用HashSet的contains方法时,实际上调用的是每一个元素的HashCode方法,来返回哈希码。如果哈 希码相同,再调用equals方法判断是否相同。只有在这两个值都返回相同的情况下才会认为该集合包含某个元 素。 ②.因此需要重写HashCode方法 == 和equals()两种比较方法,在使用时要注意: 1、如果测试两个简单类型的数值是否相等,则一定要用“==”来比较; 2、如果要比较两个引用变量对象的值是否相等,则要用对象的equals()方法进行比较; 3、如果需要比较两个引用变量是否指向同一对象,则使用“==”来进行比较; 还有,对于自定义的类,应该根据情况覆盖其父类或Object类中的equals()方法,否则默认的equals()方法功能与“==”相同 Set中的contains()方法同时调用hashCode()和equals()方法,需要重写hashCode()和equals()两个方法。 list中不需要重写hashCode()方法。 Set的contains方法,先调用hashCode方法,如果hashCode相同,才会调用equals方法
    查看全部
  • 如何判断List或者Set集合中是否包括某个实例对象——contains() contains的原理是分别调用每个元素的equals方法; 因此只需要在课程类里重写equals方法,就可以通过contains判断是否包含名称为某个值的元素 //通过contain判断list某值是否已存在的equals的方法重写 public boolean equals(Object obj){ if(this==obj){ return true; } if(obj==null){ return false; if(!(obj instanceof Course)) return false; Course course = (Course)obj; //如判断多个属性时,在此添加多个 if(this.name==null){ if(course.name==null) return true; else return false; }else{ if(this.name.equals(course.name)) return true; else return false; } } } 一、Set中的增删改查 1.添加 ①.add(E e) ②.addAll(Collection) 2.打印 ①.get方法 ②.利用迭代器遍历Iterator 3.删除 ①.remove方法 ②.removeAll方法 二、List中的增删改查 1.添加: ①.add(Object) ②.add(index,Object) ③.addAll(Collection) ④.addAll(index,Collection) 2.打印 ①.get方法 ②.利用迭代器遍历Iterator 3.删除 ①.remove(index) ②.removeAll() 4.修改 ①.Modify方法 三、Map中的增删改查 1.添加 ①.put方法 2.打印: ①.keySet方法----返回的是所有键的一个集合 ②.get方法-------返回的是所有value值的一个集合 ③.entrySet方法--返回的是所有键值对的一个集合 3.删除 ①.remove方法
    查看全部
  • Map中添加一个映射的方法是put(key,value) 修改一个映射的方法也是put(key,value) 这里为了在输入不存在ID后可以继续输入ID,用到了while(true)死循环,并根据情况continue和break 如果要实现输入 quit 退出,则把break放在if(console==quit) 循环里。
    查看全部
  • Entry是Map的一个内部类,Set<Entry<String,Student>> entrySet = students.entrySet(); Map增删改查: 增:map的put(key,value)方法添加。 查:1.利用keyset()方法获得Map中key的集合,再遍历key的集合,利用Map的get(key)方法得到key对应的value值。 2.利用EntrySet方法获取May中Entry对象集:然后用foreach遍历集,再用Entry集的getkay()和getvalue()方法得到每一个key值和value值。 删:remove(object key) 改:put(原有的key,新的value) 通过entrySet可以返回Map中的所有键值对 Set<Entry<String,Student>>entrySet = students.entrySet();
    查看全部
  • Entry是Map的一个内部类,Set<Entry<String,Student>> entrySet = students.entrySet(); Map增删改查: 增:map的put(key,value)方法添加。 查:1.利用keyset()方法获得Map中key的集合,再遍历key的集合,利用Map的get(key)方法得到key对应的value值。 2.利用EntrySet方法获取May中Entry对象集:然后用foreach遍历集,再用Entry集的getkay()和getvalue()方法得到每一个key值和value值。 删:remove(object key) 改:put(原有的key,新的value) 通过entrySet可以返回Map中的所有键值对 Set<Entry<String,Student>>entrySet = students.entrySet();
    查看全部
  • 好了,相信你一定耐心地看到了这里,我们来总结一下 == 和equals()两种比较方法,在使用时要注意: 1、如果测试两个简单类型的数值是否相等,则一定要用“==”来比较; 2、如果要比较两个引用变量对象的值是否相等,则要用对象的equals()方法进行比较; 3、如果需要比较两个引用变量是否指向同一对象,则使用“==”来进行比较; 还有,对于自定义的类,应该根据情况覆盖其父类或Object类中的equals()方法,否则默认的equals()方法功能与“==”相同。
    查看全部
  • Map接口提供了分别返回key值集合、value值集合以及Entry(键值对)集合的方法 Map支持泛型,形式如:Map<K,V> HashMap类 HashMap是Map中的一个重要的实现类,也是最常用的,给予哈希表实现 HashMap中的Entry对象是无序排列的 Key值和Value值都可以为Null,但是一个HashMap只能有一个key值为Null的映射(key值不可重复) student.get(ID)是采用Map的get()方法,检测是否存在值为ID的学生,如果没有,则返回null. keySet()方法,返回所有键的Set集合。 取得Map的容量可用size()方法。 keyset()返回Map中所有的key以集合的形式可用Set集合接收,HashMap当中的映射是无序的。 students.get(ID)是采用Map的get()方法
    查看全部
  • yujianwo 子类要调用父类的隐式构造器,但父类如果有含参构造器,则不会自动生成一个无参构造器,需要手动添加无参构造器 泛型不能是基本类型,必须是引用类型,如果用基本类型必须是包装类。 泛型集合可以存放泛型集合和泛型子类集合
    查看全部
  • Map接口特性: 1】提供了一种映射关系,其中的元素是以键值对( key-value)的形式存储的,能够实现根据key快速查找value 2】Map中的键值对以Entry类型的对象实例形式存在 3】键(key值)不可重复,value值可以 4】每个键最多只能映射到一个值 5】Map接口提供了分别返回key值集合、value值集合以及Entry(键值对)集合的方法 6】Map支持泛型,形式如:Map<k,v> HashMap类: 1】HashMap是Map的一个重要实现类,也是最常用的,基于哈希表实现 2】HashMap中的Entery对象是无序排列的 3】Key值和value值都可以为null,但是一个HashMap只能有一个Key值为null的映射(key值不可重复)
    查看全部
  • set中只能调用foreach和iterator循环输出,不能调用get方法。 这是因为set是无序的所以不能指定的输出某个元素。 Set中添加某个对象,无论添加多少次,最终只会保留一个该对象(的引用),并且保留的是第一次添加的那一个 set是元素无序并且不可以重复的集合,被称为集 HashSet--哈希集,是set的一个重要实现类 重要的特点:无序并且不可以重复 1. (1). List(序列)与Queue(队列)中存储的元素是排列有序的、可重复 Set(集)中的存储的元素无序不重复 (2). Map是键值对,存在映射关系。<Key,Value> (3). Collection中的元素一个一个存放,而Map中的元素成对出现 (4). ArryList、HashSet、HashMap是使用频率最高的三个实现类 2.Collection接口、子接口以及实现类 (1).Collection接口是JAVA集合接口中的根接口,也是List、Queue、 Set的父接口。 (2).List接口及其实现类ArrayList ArrayList是一个数组序列,可以精确的控制元素的插入删除。其底层是由数组实现的。 (3)Set接口及其实现类HashSet Set中没有修改元素的功能,即set方法
    查看全部
  • 集合中的元素,可以是任意类型的对象(对象的引用) 如果把某个对象放入集合,则会忽略他的类型,而把他当作Object处理 泛型则是规定了某额集合只可以存放特定类型的对象 会在编译期间进行类型检查,可以直接按指定类型获取集合元素 泛型的写法是:List<规定类型> demo; demo=new ArrayList<String>();
    查看全部
  • 在指定位置插入后,原有元素不覆盖而是往后移动
    查看全部
  • 1.对象被存入集合都变成object类型了 取出时需要类型强转 例:Course temp = (Course)coursesToSelect.get(0); 2.添加进list中的位置(index)介于【0,length】之间;0代表插到队头,length代表插到队尾。 3.List是接口,所以在构造方法中不能直接实例化,而通过ArrayList()实例化。 例:public List coursesToSelect = new ArrayList(); List Set Map都是接口 不可以直接对他实例化 要借助相应的实例化类 ArrayList(), HashSet(),HashMap(); 4.调用Add()方法添加到List中。有两种方法: 方法1:直接添加,例:CoursesToSelect.add(cr1); 方法2:可以指定添加的位置,例:CoursesToSelect.add(0,cr1); 5.如果添加到List中的长度大于他目前的长度,则系统会出现异常,即数组下表越界异常
    查看全部

举报

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

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