day14_自我总结

一、回顾

  1. SimpleDateFormat 时间格式化类

    (返回值)  调用方法名  传入内容
      Date  |  parse | (String source)   将字符串的时间转换为date对象
     String |  format | (Date date)   将Date对象格式化成指定的字符串
    
  2. Scanner

    (返回值)  调用方法名  传入内容
     String |   next   |   ()   接收键盘录入的字符串
     String | nextLine |   ()   获取一行内容
      int   |  nextInt |   ()   用于接收各种基本数据类型的数据
    boolean | hasNextInt | ()   用于判断键盘录入的数据的类型与接收的数据类型是否一致 
    
  3. 大数据类型 BigDecimal

     (返回值)    调用方法名        传入内容
    BigDecimal |   add    |  (BigDecimal augend)   加法
    BigDecimal | subtract |  (BigDecimal subtract)   减法
    BigDecimal | multiply |  (BigDecimal multiplicand)   乘法
    BigDecimal |  divide  |  (BigDecimal divisor)   除法
    BigDecimal | remainder | (BigDecimal divisor)   取余
    
  4. 数组工具类 Arrays

    (返回值)      调用方法名          传入内容
      int    |   binarySearch  | (int[] a,int key)   搜索指定数据在数组中索引位置
    boolean[] |     copyOf     | (boolean[] original,int newLength)   复制指定的数组
      void    |      fill      | (int[] a,int val)   填充指定数据在赋值给数组
      void    |      sort      |    (byte[] a)   按照升序排序
    
  5. 异常 = 编译时异常 + 运行时异常

    体系:Throwable  ==>  Error | Exception  ==>  RuntimeException
    

    捕获异常

    1.try - catch
    	try{
    		可能产生异常的代码
    	}catch(异常类型声明){
    		处理异常的方式
    	}
    2.try - catch - catch
    	try{
    		可能产生异常的代码
    	}catch(异常类型的声明){
    		处理异常的方式
    	}catch(异常类型的声明){
    		处理异常的方式
    	}
    3.try - catch - finally
    	try{
    		可能产生异常的代码
    	}catch(异常类型声明){
    		处理异常的方式
    	}finally{
    		最后执行的代码
    	}
    4.try - finally
    	try{
    		可能产生异常的代码
    	}finally{
    		最后执行的代码
    	}
    

二、异常中的类:Throwable

2.1 简介

1. Throwable类是所有错误或异常的 “超类” ;
2. 错误或异常是其子类时,才能(throw)抛出;
3. 常用子类:Error 和 Exception;
方法名称 方法描述
public void printStackTrace() 打印堆栈信息(错误信息)
public String getMessage() 返回此 throwable 的详细信息字符串
public String toString() 返回此 throwable 1的简短描述
package com.qf.test02;

public class Test02 {
    public static void main(String[] args) {
        try {
            int []  nums =null;
            System.out.println(nums[10]);
        } catch (Exception e) {
            //e.printStackTrace();
           // System.out.println(e.getMessage());
            System.out.println(e.toString());
        }
    }
}

2.2 throws 声明异常(重点)

1.throws  声明异常
2.方法代码有异常又不想处理,可以用throws声明异常,让调用方法的人
3.语法:定义在方法参数的后面
Def:访问修饰符  返回值类型  方法的名称(参数列表) throws 异常类型{
    	方法体;
    	return 返回值;
	}
4.说明:
   A.声明异常的范围越小越好
   B.声明异常 是RuntimeException 或其子类时 ==》调用者可以不需要进行处理
   C.声明的异常 不是RuntimeException 或不是其子类时 ==》调用者需要进行处理
   D.throws 可以声明多个异常
    

2.3 throw 抛出异常(重点)

1.throw 抛出异常
2.语法: 在方法中编写
Def:访问修饰符 返回值类型 方法的名称(参数列表){
         throw new 异常类型()
    }
3.说明:
   A.声明异常 是RuntimeException 或其子类时 ==》调用者可以不需要进行处理
   B.声明异常 不是RuntimeException 或不是其子类时 ==》调用者需要进行处理
      //处理的方法:  a.在方法中声明异常  b.使用try-catch来捕获异常
   C.在同一作用域下 只能抛出一个异常

2.4 throws 与throw(重点)

throws throw
声明异常 抛出异常
声明多个异常 抛出一个异常
声明的异常不一定会发生 抛出的异常确实存在 可能会发生
定义方法参数后面 定义在方法中

2.5 继承中的异常(重点)

在继承中  重写的方法声明的异常必须小于等于父类的范围(必须是父类声明异常的本身或者其子类)

2.6 自定义异常 (了解)

1.jdk提供很多的异常类 jdk提供不能满足实际开发中的异常信息的要求 就可以自定义异常类
2.步骤
   A.定义一个类同时其继承   Exception
   B.调用父类的构造方法  设置异常信息

三、集合

3.1简介

      数组          |         集合(用于存储数据的容器)
   长度不可变       |        长度可变
 可存基本、引用类型  |     只能存引用类型
                   |        单列集合        |        双列集合
                   | 每个元素都是独立的单元  | 以键(key)值(value)对来存储的
                                           |       ==>  以组为单元

单列集合

|| Collection (顶级接口)

|| List Set

|| ArrayList LinkedList Vector HashSet TreeSet

双列集合

|| Map (顶级接口)

|| HashMap TreeMap

|| LinkedHashMap

3.2 Collection 接口

简介

A.Collection 层次结构 中的根接口
B.它提供更具体的子接口(如 Set 和 List)实现
C.实现类:(很多)  eg:  ArrayList  \  LinkedList  \  Vector

常用方法

方法的名称 方法的描述
boolean add(E e) 向集合中插入元素
void clear() 清空集合中元素
boolean contains(Object o) 集合中是否包含此元素
boolean isEmpty() 集合是否为空
Iterator iterator() 将集合转换为迭代器
boolean remove(Object o) 删除集合中元素
int size() 获取集合的长度
Object[] toArray() 将集合转换为数组

四个带all方法

方法的名称 方法的描述 方法的返回值 col1集合 col2集合
boolean addAll(Collection<? extends E> c) 大集合添加小集合 col1添加成功之后返回true 则返回false 发生改变 不发生改变
boolean containsAll(Collection<?> c) 大集合是否完全包含小集合 col1集合完全包含col2集合则返回true否则返回false 不发生改变 不发生改变
boolean removeAll(Collection<?> c) 大集合中删除小集合 col1集合中元素发生改变 col1与col2集合交集剩余的部分 不发生改变
boolean retainAll(Collection<?> c) 获取两个集合的交集 col1与col2集合中元素完全相同返回false否则返回true col1与col2的交集 不发生改变

3.3 集合的遍历方法:四种

①集合转数组:Object[] toArray()

底层原理:元素变量读取,遍历

//将集合转换数组
        Object[] objects = col.toArray();
        for (int i=0;i<objects.length;i++) {
            System.out.println(objects[i]);
        }

②集合转换为迭代器:Iterator iterator()

底层原理:位置地址读取,迭代

调用到的方法有:
	boolean hasNext()  判断是否有下一个元素  
	E next()  返回迭代的下一个元素 
	void remove()  删除迭代器中的元素

//将集合转换为迭代器
        Iterator iter = col.iterator();
        while (iter.hasNext()) {
            Object obj = iter.next();
            System.out.println(obj);
        }

③使用增强for循环遍历

底层原理:位置地址读取,迭代

语法:
   for(集合或者数组的数据类型 变量名 :需要遍历的集合或者是数组) {
         变量名==>就是集合中每一个元素     
   }

		//实例化集合
        Collection col = new ArrayList();
		//使用增强for循环遍历
        for (Object obj :col) {
            System.out.println(obj);
        }

3.4 List 接口

简介

A.有序的
B.索引(在列表中的位置)访问元素 有索引
C.允许重复的元素 集合中的元素可以重复
 //  (从ABC总结得:) ==>  特点: 有序 有索引 可重复
Tips:  List是Collection的子类接口
       实现类:ArrayList, LinkedList

带索引的方法

方法的名称 方法的描述
void add(int index, E element) (增) 在列表的指定位置插入指定元素
E remove(int index) (删) 移除列表中指定位置的元素
E set(int index, E element) (改) 用指定元素替换列表中指定位置的元素
E get(int index) (查) 返回列表中指定位置的元素

带索引的遍历方法(集合的遍历方法)

底层原理:元素变量的,索引遍历

        //实例化List类型的集合
        List li = new ArrayList();
        li.add("千锋刘亦菲");
        li.add("千锋霞姐");
        li.add("千锋瑶姐");
        li.add("千锋婷姐");
        //使用普通for循环来进行遍历
        for (int i=0;i<li.size();i++) {
            System.out.println(li.get(i));
        }

posted @ 2022-07-28 20:45  真lyz  阅读(47)  评论(0)    收藏  举报