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

Java入门第三季

陈码农
难度入门
时长 5小时 0分
  • 通过indexOf方法来取得某元素的索引位置: 实现机制:从序列的第0个位置开始,依次循环并调用每个元素的equals方法和参数对象进行比较,如果某个元素的equals方法返回true,则返回元素的索引,如果出现多个重复的元素,则返回第一个出现的索引值;若没找到,返回-1 lastIndexOf是返回某个元素最后出现的索引位置,若没找到返回-1
    查看全部
  • try{ return;}catch(){return;} finally{return;} 程序执行try块中return之前(包括return语句中的表达式运算)代码; 有异常:执行catch块中return之前(包括return语句中的表达式运算)代码; 则再执行finally块,因为finally块中有return所以提前退出。 无异常:则再执行finally块,因为finally块中有return所以提前退出。 finally中有return会吃掉异常的 throw和throws的区别: 1.throw在方法体内,后面跟的是异常类对象,并且只能有一个 2.throws在方法声明后面,后面跟的是异常类名,可以有多个
    查看全部
  • 当调用hashSet的contains方法时,是先调用每一个元素的hashCode()方法来返回哈希码 在哈希码相等的情况下再调用equals()判断是否相等 只有在这两个方法的返回值都相等的情况下,contains方法才会返回true。
    查看全部
  • instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例。 一、List查询表中是否包含某个元素:使用contains(element e),判断是否包含多个元素:containsAll(Collection<?> c)。 1、存在返回true 反之返回false 2、实现原理是遍历表中元素,依次利用equals(object obj)比较【目标地址】,所以新建的同名对象会返回false 3、可以通过重写equels()方法,来通过比较【目标属性】来比对是否存在 二、Set表中查询也是用contains()和containsAll() 1、contains()的实现机制是通过调用每个元素的hashCode()返回hash码,再利用equals()判断两个哈希码是否相同,才能判别是否相同。 2、重写hashCode()和equals()方法,可以通过比较元素的属性进行比较。【通过系统的Generate hashCode() and 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; } }}
    查看全部
  • Sort方法可对实现了compar接口的类进行排序
    查看全部
  • Map -特点:元素成对出现,key-value,是映射关系,key不能重复,但value可以重复,也就是说,可以多key对一个value。支持泛型如Map<yy1, yy2>。 -其“儿子”HashMap是最常用的,HashMap中是无序排列,其元素中key或value可为null(但只能有一个为null)。 -声明(泛型)举例: 在类中声明 public Map<String, yy> xxx; 然后再构造方法中this.xxx = new hashMap<String,yy>(); -获取:yy temp = xxx.get( key(本例string型) ) -添加:xxx.put( key(string型), zz(yy型) ); -返回map中所有key(返回是set型集合形式) set<string> xxxxx = xxx.keyset(); 用于遍历。 -返回map中所有entry对(key-value对)(返回是set型集合形式) set<Entry<string, yy>> xxxxx = xxx.entrySet(); 同样用于遍历。 遍历时:for(Entry<string,yy> 元素: xxxxx) -删除:xxx.remove(key); -修改:也是用put,当put方法传入的key存在就相当于是修改(覆盖)
    查看全部
  • 修改映射的put方法:
    查看全部
  • 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();
    查看全部
  • 创建对象并进行初始化: Map<String,Student> students = new HashMap<String,Student>(); 测试添加:输入学生ID,判断是否被占用,未被占用则输入姓名,创建新学生对象,并添加到students中。 ①创建一个Scanner对象,用来获取输入的学生ID和姓名 Scanner console = new Scanner(System.in); ②写一个while循环输入三个学生,并在循环内判断ID是否被占用 int i = 0; while(i < 3){ System.out.println("请输入学生ID:"); String ID = console.next(); Student st = students.get(ID); ...[省略代码] ③创建新的学生对象 ④通过调节students的put方法,添加ID-学生映射 Map的keySet()方法:返回Map中的所有“键”的Set集合 遍历KeySet,取得每一个键,再调用get方法取得每个键对应的value
    查看全部
  • Map接口 1. Map接口提供了一中映射关系,其中的元素是键值对(key-value)的形式存储的,能够实现根据Key快速查找value。Key-value可以是任何对象,是以Entry类型的对象实例存在的。 2.Key是不可以重复的,Value是可以重复的。Key-value都可以为null,不过只能有一个key是null。 3.map支持泛型,Map<K,V> 4.每个键最多只能映射到一个值 5.Map接口提供了分别返回key值集合、value值集合以及Entry(键值对)集合的方法 6.通过put<K key,V value>,remove<Object key>操作数据 7.HashMap中的Entry对象是无序排列的,HashMap是Map的一个重要实现类,也是最常用的,基于哈希表是实现
    查看全部
  • Set接口及其实现类——HashSet Set是元素无序并且不可以重复的集合,被称为集; HashSet——哈希集,是Set的一个重要实现类。 1、Set没有像List中set()方法一样就修改,因为List是有序的,可以指定位置,而Set是无序的。 2、查询遍历时,Set不能用get()方法去获取,因为无序没有指定索引ID,但可以使用foreach和iterator来遍历,但是每次遍历出来可能顺序都不一样,还是因为无序造成的。 3、Set中的size(),add(),addAll(),remove(),removeAll()与List类似。 4、Set还可以添加null;无序演示
    查看全部
  • HashMap类: HashMap是Map的一个重要实现类,也是最常用的,基于哈希表实现的; HashMap中的Entry对象时无序排列的; Key值和value值都可以为null,当时一个HashMap只能有一个key值为null的映射(key值不可重复)。
    查看全部
  • 一、泛型:规定集合内可存放的元素类型。可直接取用,不必转换类型。不能添加规定类型以外的对象。 1.泛型规定了某个集合只可以存放特定类型的对象: 2.在编译期间会进行类型检查,添加规定类型及其子类型以外的对象则会报错。 3.可以直接按指定类型获取集合元素。 二、泛型List的定义及其初始化 //定义泛型List public List<Course>courses; //实例化对象 public TestGeneric(){ this.courses=new ArrayList<Course>();
    查看全部
  • (删除元素)List中有remove(index),remove(对象值)和removeAll(Arrays.asList(对象数组名))方法来删除容器中元素的值(用法和add类似). Course是信息课程类,有id和name属性。courseToSelect是list的序列容器对象。 1.remove(index);删除位置要大于0并且小于List(序列容器)的长度。如果要删除全部可以用for循环嵌套此方法。 2.remove(object);先要获得删除的值,用法是先定义一个信息变量通过get()来存放要删除的值,然后用remove(删除的对象值); public void textdelect{ Course cr=(Course)(courseToSelect.get(4)); courseToSelect.remove(cr);//通过remove(对象值); 或者 courseToSelect.remove(4);//通过remove(删除位置); } 3.removeAll(Arrays.asList());要删除指定的多个位置 Arrays.asLIst(对象数组名);作用是把数组转换为集合 用法是先创建信息对象数组存放删除元素的值,然后再用removeAll(Arrays.asList(对象数组名))方法,删除集合数组的元素。 public void textdelext2{ Course []course={(Course)(courseToSelect.get(4)),(Course)(courseToSelect.get(5))}; // 定义数组存放要删除的值 courseToSelect.removeAll(Arrays.asList(course)); // 删除4和5位置的值 }
    查看全部
  • 一、 List内容添加的方法:1, .add(cr);2, .add(int , cr);3, .addAll(Arrays.asList(数组));4, .addAll(int(位置) ,Arrays.asList(数组)); 二、 获取list的内容 : 1, Course cr = (Course)courseToSelect.get(int(位置)); 2, (迭代器方式) Itertor it = courseToselect.iterator(); Course cr = (Course)it.next(); 三、 更改List内部值 Course cr = (Course)courseToSelect.set(int(位置),new Course("具体属性信息",""));
    查看全部

举报

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

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