常用API文字版

Lucky~龍發表於2021-07-10

常用API

Object類

jvm啟動,預設匯入的是java.lang包中的內容,該包下的內容不需要import進行匯入。

概念

  • 該類是java體系中的根類,所有物件都將該類作為直接或者間接父類
    所有物件包括陣列都繼承了該類中的方法

構造方法:

  • Object() :該方法中沒有super()語句了。

方法

  • boolean equals(Object obj)

    • 比較兩個物件的地址值是否相同

    • 該方法比較的是地址值,沒有實際意義,通常會將該方法進行重寫,比較有意義資料,通常是類中屬性的比較。

    • == 和 equals區別:

      • ==

        • 可以比較基本··型別也可以比較引用型別
        • 比較基本型別: 比較是數值是否相同
        • 比較引用型別: 比較是的地址值
      • equals

        • 只能進行引用型別的比較,比較是地址值
        • 通常會重寫,比較屬性
  • int hashCode() :返回物件的雜湊碼值

    • 每建立一個物件,該物件都會有一個雜湊值存在,預設不同物件(object類中的equals)雜湊值不同,但是可以通過重寫hashCode方法,讓不同物件有相同的雜湊值。因此該方法是不能判斷是否是同一物件的。如果是同一物件的,雜湊值一定相同。
  • String toString() :返回物件的字串表示

String類

概述

  • 1.該類是一個final類,不能有子類。

  • 2.只要出現雙引號表示的字面值資料,都是該類的一個例項物件,如“abc”
    說明建立字串物件,可以不適用關鍵字new。

  • 3.字串是常量,建立後不能改變,能改變的是引用的指向

  • 4.由於字串不能改變,因此被共享。

  • 5.字串底層原理就是字元陣列

構造方法

  • 使用new關鍵字建立物件時,呼叫的方法

    • 單元測試:JUnit

      • 定義方法: public void 方法名(){ ....}
      • 需要在方法的上邊加入 @Test 註解,需要匯入對應的列庫。
      • 注意:專案中不要出現以Test為類名的類。
  • String()

    • 初始化一個新建立的String物件,使其表示一個空字元序列
  • String(byte[] bytes)

    • 通過使用平臺的預設字符集解碼指定的byte陣列,構造一個新的String
  • String(byte[] bytes,int offsert,int length)

    • 通過使用平臺的預設字符集解碼指定的byte子陣列,構造一個新的String
  • String(char[] value)

    • 分配一個新的String,使其表示字元陣列引數中當前包含的字元序列
  • String(char[] value,int offsert,int count)

    • 分配一個新的String,包含取自字元陣列引數一個子陣列的字元
  • String(String original)

    • 初始化一個新建立的String物件,使其表示一個與引數相同的字元序列
    • 新建立的字串是該引數字串的副本

方法

  • 1、判斷

    • 返回boolean

      • contains(CharSequence s)

        • 當且僅當此字串包含指定的char值序列,返回true
      • endsWith(String suffix)

        • 測試此字串是否以指定的字尾結束。
      • equals(Object anObject)

        • 將此字串與指定物件比較
      • equalsIgnoreCase(String anotherString)

        • 將此String與另一個String比較,不考慮大小寫
      • isEmpty()

        • 當且僅當length()為0時返回true
      • startsWith(String prefix)

        • 測試此字串是否以指定的字首開始
  • 2、獲取

    • 返回char

      • charAt(int index)

        • 返回指定索引處的char值
    • 返回int

      • 找不到指定的字元或字串,則返回固定值-1

      • indexOf(int ch)

        • 返回指定字元在次字串中第一次出現處的索引
      • indexOf(int ch,int fromIndex)

        • 返回在次字串中第一次出現指定字元處的索引,從指定的索引開始搜尋
      • indexOf(String str)

        • 返回指定字串在此字串中第一次出現處的索引
      • indexOf(String str,int fromIndex)

        • 返回在次字串中第一次出現指定字串處的索引,從指定的索引開始搜尋
      • length()

        • 返回此字串的長度
    • 返回String

      • 擷取字串

      • substring(int beginIndex)

        • 返回一個新字串,它是此字串的一個子字串
      • substring(int beginIndex,int endIndex)

        • 返回一個新字串,它是此字串的一個子字串
  • 3、轉換

    • 返回String

      • copyValueOf(char[] data)

        • 返回指定陣列中表示該字元序列的String
      • copyValueOf(char[] data,int offset,int count)

        • 返回指定陣列中表示該字元序列的String
      • 將字元陣列轉換為字串

      • 將任意型別轉換為字串

        • valueOf()

          • 引數可為各種基本型別,返回該引數的字串形式
      • 字母字串的大小寫轉換

        • toUpperCase()

          • 將此String中的所有字元轉換為大寫
        • toLowerCase()

          • 將此String中的所有字串轉換為小寫
    • 返回char[]

      • toCharArray()

        • 將此字串轉換為一個新的字元陣列
    • 返回byte[]

      • getBytes()

        • 使用平臺的預設字符集將此String編碼為byte序列,並將結果儲存到一個新的byte陣列中
  • 4、其他

    • 返回String

      • concat(String str)

        • 將指定字串連線到此字串的結尾
      • replace(char oldChar,char newChar)

        • 返回一個新的字串,它是通過用newChar替代此字串出現的所有ordChar得到的
      • trim()

        • 返回字串的副本,忽略前面和尾部的空白

字串快取區物件

緩衝區:

  • 看成一個容器,此容器的大小可以改變

字串緩衝區

  • 操作過程中可以操作任意型別的資料,操作結束後,得到一個唯一的字元。
    在操作的過程中,一直操作同意快取區

物件

  • StringBuffer和StringBuilder

    • 區別

      • StringBuffer jdk1.0版本的,多執行緒安全,效率慢
      •     StringBuilder jdk5.0版本的,多執行緒不安全,效率快
        
    • 特點

      • 都是final類,即不能有子類,可變的字元序列
    • 構造方法

      • new StringBuilder() 常用
      • new StringBuilder(指定容量)
      • new StringBuilder(String str) 常用,將字串轉為字串緩衝區物件
    • 字串和緩衝區物件之間的轉換問題:

      • String---->StringBuilder :

        • new StringBuilder(String str)
      • StringBuilder ---->String

        • new String(StringBuilder s)
        • new StringBuilder().toString()
      • 互轉的目的就是為了使用對方的功能或對方的特點

    • 方法

        • append(data) : 將data追加到原有資料的末尾
        • insert(index,data) :將data插入到index位置上
        • delete(start ,end) :刪除[start,end)區間內的字元
        • deleteCharAt(index):刪除index位置上的字元
        • replace(start,end ,newStr):將[start,end)區間內的替換為newStr
        • reverse(): 反轉
        • setCharAt(index, newChar) :將index位置上的字元修改為newChar
        • length(): 獲取字元長度
        • capcity(): 獲取實際容量
        • toString():返回字元序列

包裝類

java.lang包中的物件

  • 基本型別僅僅是表示一個簡單的資料,需要能像物件一樣,進行方法和屬性的訪問操作。

基本型別

  • byte short int long double float char boolean

包裝型別

  • Byte Short Integer Long Double Float Character Boolean

構造方法

  • Integer(int value)

    • 構造一個新分配的Integer物件,它表示指定的int值
  • Integer(String s)

    • 構造一個新分配的Integer物件,它表示String引數所指示的int值
  • Character(char valuer)

    • 構造一個新分配的Character物件,用以表示指定的char值
  • 只有字元型別有一個構造方法,來建立物件,其他對是兩個與Integer類似。

  • 注意:String引數一定要與被建立物件的格式是一致的,否則出現格式化異常。

方法

  • 1、基本型別關鍵字+Value()

    • 將包裝類物件轉為對應的基本型別
  • 2、static parse+基本型別關鍵字(首字母大寫)(String s)

    • 將s解析為對應的基本型別

總結

  • int 、String、 Integer三者間轉換:

    • int--->String :

      • int+””
      • String.valueOf(int)
      • Integer.toString(int)
    • String---> int:

      • Integer.parseInt(str)
    • int--->Integer

      • new Integer(int)
      • Integer.valurOf(int)
    • Integer---->int

      • intValue()
    • String---->Integer

      • new Integer(str)
      • Integer.valueOf(str)
    • Integer---->String :

      • new Integer().toString()

JDK5.0特性

  • 自動裝箱和自動拆箱

    • 裝箱

      • 將基本型別轉為包裝類物件形式
    • 拆箱

      • 將包裝類物件轉為基本型別
    • 自動裝箱

      • 可以將基本型別資料直接賦值給包裝類物件
    • 自動拆箱

      • 可以將包裝類物件直接賦值給基本型別變數
    • 好處

      • 簡化程式碼的書寫
    • 弊端

      • 大量使用可能會對效能有損傷,不建議多使用

System類

java.lang包中,final類,系統類,類中成員是靜態的,該類不能例項化。

屬性

  • out: 標準的輸出資料,預設輸出位置是控制檯,可以改。
  • in :標準的輸入資料,預設是通過鍵盤進行輸入,可以改。
  • err: 標準的錯誤資料輸出,用法out相同,輸出位置也是控制檯,輸出內容位置會移動。

方法

  • long currentTimeMillis():

    • 獲取當前系統時間毫秒值,從1970-1-1 0:0:0開始計算的。
    • 1s = 1000ms
  • void exit(int status)

    • :jvm終止執行。status是狀態碼,非0數字代表異常退出

Math

java.lang包中,final類,類中封裝了常用的一些基本數學計算,如三角函式、對數等。

類中成員都是靜態的。

屬性

  • PI:圓周率
  • E:自然底數

方法

  • abs()

    • 絕對值:引數型別float、double、int、long
  • cbrt()

    • 開立方:引數型別double
  • sqrt()

    • 開平方根:引數型別double
  • ceil()

    • 大於引數的最小整數:引數型別 double
  • floor()

    • 小於引數的最大整數:引數型別 double
  • max()

    • 返回兩個整數中的大數:引數型別:double、int、long
  • min()

    • 返回兩個整數中的小數:引數型別:double、int、long
  • pow()

    • 計算2的3次冪:引數型別double
  • round()

    • 四色五日:引數型別float--int double---long
  • random

    • 隨機數 0.0~1.0

new Random()

  • nextInt(int n)

    • 返回[0,n)之間的隨機整數

大資料型別

java.math包中

BigInteger:

  • 基本型別:long型別8位元組

    • 遇到的資料超出long型別,使用BigInteger來表示
  • 構造方法

    • BIgInteger(String val)

      • 將BigInteger的十進位制字串表示形式轉換為BigInteger
    • BIgInteger(String val,int radix)

      • 將指定基數的BigInteger的字串表示形式轉換為BigInteger
  • 方法

    • b1.add(b2)

      • 加法
    • b1.subtract(b2)

      • 減法
    • b1.multiply(b2)

    • b1.divide(b2)

    • b1.abs()

      • 絕對值
    • 注:

      • 方法的返回值型別是:BigInteger型別。

BigDecimal

  • double、float 應用領域:科學記數或工業領域,都是近似數。
    該類是一個不可變的有精確的表示小數

  • 構造方法

    • BigDecimal(String num) : 常用

    • BigDecimal(double num)

      • 可能出現不可預知的結果,因此不建議使用
        將double資料轉為字串,再封裝到BigDecimal物件中

日期物件

java.util包

Date

  • 表示特定的瞬間,能精確到毫秒

  • 構造方法()

    • Date()

      • 分配Data物件並初始化此物件,以表示分配它的時間(精確到毫秒)
    • Date(long date)

      • 放入long型別毫秒值,把毫秒值轉換為Date日期
  • 方法

    • setTime(long time)

      • 設定此Date物件,以表示1970年1月1日00:00:00GMT以後time毫秒的時間點
    • getTime()

      • 返回1970年1月1日00:00:00GMT以來此Date物件表示的毫秒數

日期格式化

  • DateFormat

    • DateFormat類是一個抽象類,無法直接創造物件使用,可以使用DateFormat類的子類

    • 構造方法

      • SimpleDateFormat(String pattern)

        • 用給定的模式和預設語言環境的日期格式符號構造SimpleDateFormat
        • 寫對應的模式,會把模式替換為對應的日期和時間
  •  "yyyy-MM-dd HH:mm:ss"
     	- 注:連線符號可以改,字母不能更改
     	- 模式: y 年   M 月   d 日   h/H 小時  m分鐘   s 秒  S毫秒  E 星期
    
    • 成員方法

      • String format(Date date)

        • 按照指定的模式,把指定的模式,把Date日期,格式化為符合模式的字串(文字)
      • Date parse(String source)

        • 把符合模式的字串,解析為Date日期

日曆物件

在java.util包中

Calendar

  • 該物件將Date類中的大部分方法替代了。該物件封裝有關係時間日期資訊很詳細

  • 獲取Calendar物件

    • static getInstance()
  • 方法

    • public int get(int field)

      • 返回給定日曆欄位的值
      • 引數:傳遞指定的日曆欄位(YEAR,MONTH……)
    • public void set(int field,int value)

      • 將給定的日曆欄位設定為給定值
      • 引數:
    •   int field:傳遞指定的日曆欄位(YEAR,MONTH)
      
    •   int value:給指定欄位設定的值
      
    • public abstract void add(int field,int amount)

      • 根據日曆的規則,為給定的日曆欄位新增或減去指定的時間量。
      • 引數:
    •   int filed傳遞指定的日曆欄位(YEAR,MONTH)
      
    •   int amount:增加/減少指定的值
      
    •          正數:增加
      
    •          負數:減少
      
    • public Date getTime():

      • 返回一個表示此Calendar時間值(從曆元到現在的毫秒偏移量)的Date物件
        把日曆物件,轉換成日期物件

總結

  • 1.Date和Calendar互轉
    2.獲取毫秒值的方式
    3.格式化日期或日曆對

NumberFormat

該類是用來格式化和解析數值資料的,該類是一個抽象類,類中提供靜態方法可以獲取物件

獲取NumberFormat物件

  • format()

    • 格式化資料,將數值轉化為文字格式
  • parse()

    • 解析資料,將文字轉為數值
  • setMaximumFractionDigits(int newValue)

    • 設定數的小數部分所允許的最大位數
  • setMaximumIntegerDigits(int newValue)

    • 設定數的整數部分所允許的最大位數

自由主題

相關文章