12.Java語言API,Object類、StringBuilder、Date時間獲取、System類常用方法、裝箱和拆箱

Object類

Java.lang.Object(類):是Java中任何“引用類型”的父類。包括自定義的類、類庫中的類、數組

都繼承了toString()和equals()方法

1.toString方法:

打印引用類型時,會自動調用toString方法,但是父類Object中的toString方法打印的是地址值,需要在自類中重寫toString方法,以輸出所有屬性的值

(重寫和設置訪問器的方式一樣,勾選toString() IDEA自動生成)

2.equals方法:

equals方法是比較兩個對象的所有屬性是否相同,

如果沒有覆蓋重寫equals方法,那麼Object類中默認進行 == 運算符的對象地址比較,只要不是同一個對象,結果必然爲false。

如果希望進行對象的內容比較,即所有或指定的部分成員變量相同就判定兩個對象相同,則可以覆蓋重寫equals方法。重寫的方式和重寫toString方法一致

Objects類:

包名,java.util.Objects(類),類內部定義了大量的對"對象"操作的一些"靜態方法"。

1.equals(Object o1,Object o2)方法:

比較兩個對象是否完全相同,但是是基於對象中重寫的equals方法進行判斷,如果沒有重寫,和toString方法一樣是比較地址是否相同,但是會判斷對象是否爲空,不會拋出空指針異常,

雖然是基於對象中重寫的equals方法,Objects 的equals方法更安全,不會發生空指針異常報錯

Date類

包名:java.util.Date,表示一個特定的時間,精確到毫秒

兩個構造方法

  1. 無參構造方法,使用當前系統時間創建一個Date對象
  2. 有參構造方法:Date(long m)使用一個毫秒值構造一個Date對象

成員方法:

  1. public long getTime():獲取此Date對象代表的毫秒值;
    如果是以當前時間創建的對象,那麼這個毫秒值就是從1970年01月01日零時,到現在的總毫秒值,設置了毫秒值則是設置的值
  2. public void setTime(long m):設置此Date對象的毫秒值;此Date對象所表示的日期會被更改;

DateFormat類

包名:java.text.DateFormat(抽象類):可以對Date進行“格式化顯示”的一個工具類。抽象類不能創建對象,是使用子類SimpleDateFormat類創建對象

 

首先都需要創建一個子類的對象,構造方法SimpleDateFormat(String pattern)參數裏是日期的格式

1.將Date轉換爲String

public static void main(String[] args) {
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH時mm分ss秒");//這裏的格式就是轉換後打印顯示的格式
    String str = sdf.format(new Date());//format方法
    System.out.println(str);
}

2.將String轉換爲Date

public static void main(String[] args) throws ParseException {
    String str = "2018-09-04";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");//此格式必須跟字符串中的日期格式“匹配”否則拋異常。
    Date date = sdf.parse(str);
    System.out.println(date);
}

 

Calendar類

包名:java.util.Calendar(抽象類),也是一個抽象類,不能創建對象,子類:GregorianCalendar(子類)可以使用一個簡單的方式獲取這個子類對象:

        Calendar c = Calendar.getInstance();

1.常用方法:

1).public int get(int field):獲取某個字段的值;

2).public void set(int field,int value):設置某個字段的值;

3).public void add(int field,int value):爲某個字段增加指定的值;

System類

包名:java.lang.System(類),包含一些靜態方法

常用方法:

1.複製數組

public static void arraycopy(Object src, int srcPos,Object dest,int destPos,int length)

                                          //想要複製的數組,起始位置,複製存儲的數組,複製長度

此方法是把一個數組的指定內容複製到另一個數組中(是兩個數組)

2.獲取當前時間

public static long currentTimeMillis():獲取當前系統時間的毫秒值;

相當於:Date date = new Date();

              long m = date.getTime();

3.結束虛擬機

public static void exit(int status):結束JVM。也就是結束程序。status值爲0即可

StringBuilder類

包名:java.lang.StringBuilder(類),做字符串連接

1.  構造方法:

StringBuilder()無參構造方法,自動爲對象申請一個16個空位的數組,當添加的字符串存儲不下,自動拓展爲32位數組,並且16的數組銷燬,如果再不夠以此方式增加

2. 常用方法:

a) public StringBuilder append(各種類型):把參數連接在數組後,(小數點也算一個字符 )

返回的是一個StringBuilder類型的值,可以直接再調用

b) public StringBuilder reverse():自動反轉數組中的字符串

包裝類

將基本類型“包裝成”引用類型

1.基本類型分爲四類八種:

byte   short   char        int      long   float   double   boolean

對應引用類型:

Byte   Short   Character   Integer  Long   Float   Double   Boolean

2.將某種類型轉換成字符串:

格式:

int a = 24;

String s = Integer.toString(a);

  1. 將字符串轉換成某種類型:

格式:

String a = "24";

int age = Integer.parseInt(a);

轉換時,需要轉換成int類型,那麼字符串中不能有其他類型的值

所有包裝類都可以轉換,但是Character不可以

3.裝箱和拆箱:

裝箱:將"基本類型"賦值給"包裝類型";

拆箱:將"包裝類型"賦值給"基本類型":

Java中把包裝類型和基本類型同等看待,比如int 類型的值可以直接賦值給Integer 包裝類型:          

Integer a = 10; //裝箱

int b = a;//拆箱                         (a可以++,a++也能計算)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章