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

Java入门第三季

陈码农
难度入门
时长 5小时 0分
  • Comparable接口-----可比较的 1.实现该接口表示:这个类的实例可以比较大小,可以进行自然排序 2.定义了默认的比较规则 3.其实现类需实现compareTo()方法 compareTo()方法返回正数表示打,负数表示小,0表示相等 Comparator接口-----比较工具接口 1.用于定义临时比较规则,而不是默认比较规则 2.其实现类需要实现compare()方法 3.Comparator和Comparable都是Java集合框架的成员 Java集合框架:Collection接口、Collections工具类、Map接口、Comparator接口、Comparable接口
    查看全部
  • java.util包中含有Random类可以生成随机数([0.1)之间)。如果想生成n以内的随机整数 Random randon= new Random(); int c=random.nextInt(n); Collections工具类: Java集合框架,用来操作集合对象的工具类,也是集合框架的成员。 Collections.sort()方法给Integer list按数字升序排列顺序。
    查看全部
  • Map中通过containsKey()方法和containsValue()方法来判断键和值是否存在 Map 中对对象进行了 Key 标记,通过 get(Key)可以取得对应的对象 Map 的containsValue()方法的参数是 Object 对象,因为Map 的 Value 值是对象元素 Map 的containsKey()方法取得 Map 映射的 Key 值 List中的contains()方法借Map中的containsValue()方法调用equals()方法来进行比较。所以要重写Hashcode和equals方法 跟 List 的 contains()方法一样,Map 中的 containsValue()方法也会调用每个 Value 值的 equals()方法去和参数对象比较 id 是string类型 contains方法使用equals方法 来比较,所以值相等就返回ture Value 是Student类型,自己定义的,默认的contains方法中的equals方法,比较的是两个引用是否一样,所以要重写equals方法 由于是比较两student类型是否相同,所以要做Student类中重写equals方法
    查看全部
  • 获取包含元素的索引位置:索引位置需要使用List类中的indexOf()方法来获取当前元素的索引位置语法: List的对象.indexOf(元素对象);来获取如果该元素多次出现则返回该元素第一次出现的索引位置List类中还定义了LastIndexOf()方法 他是返回元素最后一次出现的索引位置也就是说,他会从队尾到队头来遍历。 这两种方法,如果list中没有该元素对象,就返回值-1
    查看全部
  • set的contains判断机制: 1:Set通过调用hashCode和equals方法来判断两个元素是否相等,只有当两个条件都满足时才认为两个元素相等,Set重写equals()和hashCode()。 2:Set先调用object中的hashcode方法,返回对象的hash码。如果不同直接返回FALSE,如果相同则调用equals方法进行比较。 3:再调用object中的equals方法。而新建立的查询对象,返回的hash码并不相同,返回为false。所以在set类型进行contains的时候要重写比较对象的hashCode。可以使用eclipse中的source>GENARATE hashcode(),在对象的类中,实现方法的重写。 4:List通过调用equals方法来判读两个元素是否相等,list中调用equals()方法,重写equals()方法,不需要重写hashCode()方法。 5:无论是List集合还是Set集合,在通过contains()方法判断集合是否包含特定名称的元素,都需要对判断是否相同的方法进行重写,List重写equals()方法,Set则重写hashCode()方法,两种方法重写都可以直接在eclipse中实现
    查看全部
  • 重写equals方法:// 该写法可以作为一种模板 public boolean equals(Object obj){ if(this == obj){ //先判断是否是同一个对象 return true; } if(obj == null){ // 如果不是同一对象,接着判断对象是否为空 return false; } if(!(obj instanceof Course)){ // 接着判断是不是Course类型的对象 return false; } Course course = (Course)obj; // 如果是,进行类型转换 if(this.name==null){ // 接着判断属性值是否为null if(course.name==null){ return true; }else{ return false; } }else{ // 如果属性值不是null,需要再调用父类中的equals方法,比较值的内容 if(this.name.equals(course.name)){ return true; }else{ return false; } } }
    查看全部
  • 异常链: public class ChainTest { /** * test1()抛出喝大了异常 * test2()调用test1()捕获喝大了异常,并且包装成运行时异常,继续抛出 * main方法中调用test2(),尝试捕获 test2()方法抛出的异常 */ public static void main(String[] args) { // TODO Auto-generated method stub ChainTest ct = new ChainTest(); try{ ct.test2(); }catch(Exception e){ e.printStackTrace(); } } public void test1() throws DrunkException{ throw new DrunkException("喝酒别开车"); } public void test2(){ try { test1(); } catch (DrunkException e) { // TODO Auto-generated catch block RuntimeException newExc = new RuntimeException("司机一滴酒,亲人两行泪"); newExc.initCause(e); throw newExc; } } }
    查看全部
  • 基本类型转换为字符串有三种方法: 1. 使用包装类的 toString() 方法 2. 使用String类的 valueOf() 方法 3. 用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串 字符串转换成基本类型有两种方法: 1. 调用包装类的 parseXxx 静态方法 2. 调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱v
    查看全部
  • return在try-catch-finally中: 1、不管有木有出现异常,finally块中代码都会执行; 2、当try和catch中有return时,finally仍然会执行; 3、finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值保存起来,管finally中的代码怎么样,返回的值都不会改变,仍然是之前保存的值),所以函数返回值是在finally执行前确定的; 4、finally中也可以包含return,最终返回值就会变成finally中return返回的值 1.e.printStackTrace()可以输出异常信息 2.-1为抛出异常的习惯写法 3.如果方法中try,catch,finally中没有返回语句,则会调用这三个语句块之外的return结果 4.finally块无论如何,不管前面是正常还是异常,都要执行。 5.finally 在try中的return之后 在返回主调函数之前执行。
    查看全部
  • 异常处理:异常范围要从小到大
    查看全部
  • 对象存入集合中变成object类型,取出时需要类型转换。
    查看全部
  • 1.Java中的所有不正常类都继承于Throwable类。Throwable主要包括两个大类,一个是Error类,另一个是Exception类; 2.其中Error类中包括虚拟机错误和线程死锁,一旦Error出现了,程序就彻底的挂了,被称为程序终结者; 3.Exception类主要指编码、环境、用户操作输入出现问题,Exception主要包括两大类,非检查异常(RuntimeException)和检查异常(其他的一些异常) 4.RuntimeException异常主要包括以下四种异常:空指针异常、数组下标越界异常、类型转换异常、算术异常。 5.检查异常包括:文件异常(IOException)、SQL异常(SQLException)
    查看全部
    0 采集 收起 来源:Java异常简介

    2017-08-02

  • 遍历 keySet 返回是key entrySet 返回是键值对 修改 put方法 只需将value中的name更改 添加 put方法 删除 remove(key) 利用put(key,value)方法修改已有key的value值: Student student = students.get(id); Student newStudent = new Student(id,name); students.put(id,newStudent); // put到已有的key
    查看全部
  • eySet方法: Set<String> keySet = students.keySet();//返回Map中所有的key的set集合; //获取每个key的value; for(String sid : keySet){ Student st = students.get(sid); } Map的实现类HashMap: Set无序存放;
    查看全部
  • 非检查异常RuntimeException(空指针异常NullPointerException,数组下标越界异常ArrayIndexOutOfBoundsException,类型转换异常ClassCastException,算数异常ArithmeticException)
    查看全部
    0 采集 收起 来源:Java异常简介

    2017-08-02

举报

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

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