Java的經常使用API

Object類

1.toString方法
在咱們直接使用輸出語句輸出對象的時候,其實經過該對象調用了其toString()方法。java

2.equals方法
方法摘要:
類默認繼承了Object類,因此可使用Object類的equals方法
boolean equals(Object obj)指示其餘某個對象是否與此對象「相等」數組

equalse方法源碼: public boolean equals(Object obj){ return (this == obj); }

參數:app

  • Object obj:能夠傳遞任意的對象
  • == 比較運算符,返回的是一個布爾值 true false
  • 基本數據類型:比較的是值
  • 引用數據類型:計較的是兩個對象的地址值 

Data類

java.util.Date:表示日期和時間的類
類Date 表示特定的瞬間,精確到毫秒。
毫秒:千分之一秒 1000毫秒=1秒ui

把日期轉換成毫秒:this

  • 當前的日期:2019-07-18
  • 時間原點(0毫秒):1970-01-01 00:00:00(英國格林威治)
  • 就是計算當前日期到時間原點之間一共經歷了多少毫秒

注意:
中國屬於東八區,會把時間增長8個小時spa

  • 1970-01-01 08:00:00

把毫秒轉換爲日期:code

  • 1天 = 24*60*60 = 86400秒 = 86400*1000=86400000毫秒

使用:orm

Date類的帶參數構造方法 Date date = new Date(); Date();//獲取當前系統的時間和日期
--------- Date date = new Date(0L); Date(long date);//傳遞毫秒值,把毫秒值轉化成Date日期
----------- Date date = new Date(); long time = date.getTime(); long getTime() 把日期轉換成毫秒(至關於System.currentTimeMillis()方法) 返回自1970年1月1日 00-00-00GMT 以來此Date 對象表示的毫秒數。

DateFormat類

java.text.DateFormat:是日期/時間格式化子類的抽象類對象

做用:blog

  • 格式化(也就是日期 -> 文本),解析(文本->日期)

成員方法:

  • String format(Date date) 按照指定的模式,把Date日期,格式化爲符合模式的字符串
  • Date parse(String source) 把符合模式的字符串,解析爲Date日期
  • DateFormat類是一個抽象類,沒法直接建立對象使用,可使用DateFormat類的子類
java.text.SimpleDateFormat extends DateFormat

使用DateFormat類中的方法format,把日期格式化爲文本

使用步驟:

  1. 建立simpleDateFormat對象,構造方法中傳遞指定的模式
  2. 調用SimpleDateFormat對象中的方法format,按照構造方法指定的模式,把Date日期格式化爲符合模式的字符串(文本)
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH時mm分ss秒"); Date date = new Date(); String d = sdf.format(date);

Calendar類

介紹:
java.util.Calendar類;日曆類

  • Calendar類是一個抽象類,裏邊提供了不少操做日曆字段的方法(YEAR、MONTH、DAY_OF_MONTH、HOUR)
  • Calendar類沒法直接建立對象使用,裏邊有一個靜態方法叫getInstance(),該方法返回了Calendar類的子類對象
  • static Calendar getInstance() 使用默認時區和語言環境得到一個日曆。
Calendar c = Calendar.getInstance();//多態

Calendar類的經常使用成員方法:

  • public int get(int field);返回給定日曆字段的值。
  • public void set(int field,int value);將給定的日曆字段設置爲給定值
  • public abstract void add(int field, int amount);根據日曆的規則,爲給定的日曆字段添加或減去指定的時間量。
  • public Data getTime();返回一個表示次Calendar時間值(從曆元到如今的毫秒偏移量)的Date對象。
//public int get(int field);返回給定日曆字段的值。
Calendar c = Calendar.getInstance(); int year = c.get(Calendar.YEAR); int month = c.get(Calendar.MONTH); ///public void set(int field,int value);將給定的日曆字段設置爲給定值 //設置年爲9999 //設置月爲9月
c.set(Calendar.YEAR,9999); c.set(Calendar.MONTH,9); //增長年
c.add(Calendar.YEAR,2); //把日曆對象,轉換爲日期對象
Date date=c.getTime();

Syetem類

java.lang.System類中提供了大量的靜態方法,能夠獲取與系統相關的信息或系統級操做,在System類的API文檔中,經常使用的方法有;

  • public static long currentTimeMillis();返回以毫秒爲單位的當前時間。
  • public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int Length);將數組中指定的數據拷貝到另外一個數組中。

參數:

  • src - 源數據
  • srcPos - 源數據中的起始位置(起始索引)。
  • dest - 目標數組。
  • destPos - 目標數據中的起始位置
  • Length - 要複製的數組元素的數量。

StringBuilder類

StringBuilder類

字符串緩衝區,能夠提升字符串的操做效率(當作一個長度能夠變化的字符串)
底層也是一個數組,可是沒有被final修飾,能夠改變長度

byte[] value = new byte[16];

StringBuilder在內存中始終是一個數組,佔用空間少,效率高
若是超出了StringBuilder的容量,會自動的擴展。

比較與:String類
字符串是常量;它們的值在建立以後不能更改。
字符串的底層是一個被final修飾的數組,不能改變,是一個常量

private final byte[] value;

進行字符串的相加,內存中就會有多少個字符串,佔用空間多 ,效率低下

 

java.lang.StringBuilder類:字符串緩衝區,能夠提升字符串的效率
構造方法:

  • StringBuilder()構造一個不帶任何字符的字符串生成器,其初始容量爲16個字符。
  • StringBuilder(String str) 構造一個字符串生成器,並初始化爲指定的字符串內容。

StringBuilder的經常使用方法:

  • public StringBuilder append(...):添加任意類型數據的字符串形式,並返回當前對象自身。

StringBuilder和String能夠相互轉換;

  • String -> StringBuilder:可使用StringBuilder的構造方法
  • StringBuilder(String str)
  • StringBuilder-> String:可使用StringBuilder中的toString方法
  • public String toString(); 

包裝類

包裝類:

基本數據類型,使用起來很是方便,可是沒有對應的方法來操做這些基本類型的數據
可使用一個類,把基本類型的數據裝起來,在類中定義一些方法,這個類叫作包裝類,
咱們可使用類中的方法來操做這些基本類型的數據。

裝箱:把基本類型的數據,包裝到包裝類中(基本類型的數據->包裝類)
構造方法:

  • Integer(int value)構造一個新分配的 Integer對象,它表示指定的 int值。
  • Integer(String s)構造一個新分配的 Integer對象, 它表示String參數所指示的 int值。

傳遞的字符串,必須是基本類型的字符串,不然會拋出異常"100"正確 "a"拋異常
靜態方法:

  • static Integer valueOf(int i)返回一個表示指定的int值的Integer實例。
  • static Integer valueOf(String s)返回保存指定的String的值的Integer對象。

拆箱:在包裝類中取出基本類型的數據(包裝類->基本類型的數據)
成員方法:

  • int intValue()以int 類型返回該Integer的值。

自動裝箱和自動拆箱:基本類型的數據和包裝類之間能夠自動的相互轉換
JDK1.5 以後出現的新特性

自動裝箱:直接把int類型的整數賦值包裝類

  • Integer in = 1; 就至關於 Integer in = new Integer(1);

自動拆箱:in是包裝類,沒法直接參與運算,能夠自動轉換爲基本數據類型,在進行計算

  • int + 2;就至關於 in.inVale() + 2=3

in = in.intVale() + 2 = 3 又是一個自動裝箱

注意:

  • ArrayList集合沒法直接存儲整數,能夠存儲Integer包裝類
  • list.add(1);-->自動裝箱 list.add(new Integer(1));
  • int a = list.get(0);//-->自動拆箱 list.get(0).intValue();

基本類型與字符串類型之間的相互轉換

基本類型->字符串(String)

1.基本類型的值+"" 最簡單的方法(工做中經常使用)
2.包裝類的靜態方法toString(參數),是Object類的toString()重載

  • static String toString(int i) :返回一個表示指定整數的String對象。

3.String類的靜態方法valueOf(參數)

  • static String valueOf(int i) :返回int參數的字符串表示形式。

字符串(String)->基本類型
使用包裝類的靜態方法parseXXX("字符串");

  • Integer類:static int parseInt(String s)
  • Double類:static double parseDouble(String s)
相關文章
相關標籤/搜索