常用API第二部分

1.Object类

  1. toString方法

  2. equals方法
    常用API第二部分 - 图1

  3. 重写equals方法
    默认比较地址值,无意义,改写比较对象的属性。
    多态的弊端:无法使用子类特有的内容。
    解决:使用向下转型。 ``` public boolean equals(Object obj){ //如果传回本身,返回ture if(obj == this){

    1. return true;

    } //提高程序效率 if(obj == null){

     return false;
    

    } //增加判断,防止类型转换异常 //向下转型 if(obj instanceof Person){

     Person p = (Person)obj;
     //比较属性
    

    return this.name.equals(p.name)&&this.age==p.age; }else{

     return false;
    

    }

}



4. 
Objects类的equals方法
<br />提供大量静态方法供使用。
<br />空指针安全。![](https://i.loli.net/2021/03/07/Hq19h8A7COIspxe.jpg#alt=Objects_equals)


<a name="3f0e781b"></a>
## 2.Date类

1. 构造与成员方法

Date date = new Date(); Date date = new Date(0L); long time = date.getTime();//返回1970年1月1日00:00:00到此的毫秒数


2. 
DateFormat类
<br />日期/时间格式化子类的抽象类
<br />作用:
<br />    格式化(日期)->文本、解析(文本)->日期
<br />成员方法:

String format(Date date); Date parse(String sourse);


<br />DateFormat为抽象类不可直接使用,可使用实现的子类:simpleDateFormat
<br />构造方法:
<br />    SimpleDateFormat(String pattern);
<br />    pattern:模式可查,区分大小写。
```java
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
Date date = new Date();
String d = sdf.format(date);
parse();方法抛出异常,若字符串与模式不匹配,那么就会抛出异常。


3.Calendar类

  1. 抽象类,提供了很多操控日历字段的方法

  2. 无法直接创建对象使用,使用静态方法getInstance()方法,返回子类对象。

    Calender c = Calender.getInstance();//返回Calendar类的子类实现
    


常用API第二部分 - 图2

c.set(2021,5,25);

4.System类

  1. public static long currentTimeMillis();返回以ms为单位的当前时间

  2. public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length);
    src - 源数组。
    srcPos - 源数组中的起始位置。
    dest - 目标数组。
    destPos - 目标数据中的起始位置。
    length - 要复制的数组元素的数量。

5.StringBuilder类

  1. StringBuilder字符串缓冲区,可以看做长度可变化的字符串。初始容量16,超出自动加倍。 ``` StringBuilder bu1 = new StringBuilder(); String Builder bu2 = new StringBuilder(String str);

bu1.append();//可添加任意数据类型的数据 bu1.toString();//将当前StringBuilder转化为String;




<a name="0737e4e1"></a>
## 6.基本类型包装类

1. 
装箱与拆箱
<br />装箱:

//构造 Integer(int value); Integer(String str);

Integer.valueOf(int或String);


<br />拆箱:

intValue();



2. 
自动装箱与自动拆箱

//自动装箱 Integer in = 1;

//自动拆箱 in = in + 2;//然后又自动装箱

ArrayList list = new ArrayList(); list.add(1); int i = list.get(0); ```

  1. 基本类型与字符串之间转换
    基本类型->字符串

    • 包装类的toString()方法
    • String类的静态方法 valueOf();

    • 包装类的静态方法 parseXXX(String s);