1. 程式人生 > >Java中常用的API總結

Java中常用的API總結

Java API是JDK所提供的使用類,這些類將底層的程式碼給封裝起來了。Object類是java語言中的根類,它所描述的所有方法子類都可以使用,所有類在建立物件的時候,最終找的父類就是Object。在Objec類中,最常見的就是euqals方法和toString方法。equals方法用於比較兩個物件是否相同,實質是比較兩個物件的記憶體地址。在複寫Object中的equals方法時,一定要注意public boolean equals(Object obj)的引數是Object型別。在呼叫物件的屬性時,一定要進行型別轉換,轉換之前一定要進行型別判斷。toString方法返回該物件的字串表示。其實該字串內容就是物件的型別

[email protected]+記憶體地址值。

String類:

String類代表字串。字串的值在建立之後不能更改。字串本身不能改變,但str變數中記錄的地址值是可以改變的。String類中有大量的過載構造方法。

​

String s1 = new String(); //建立String物件,字串中沒有內容
	
byte[] bys = new byte[]{97,98,99,100};
String s2 = new String(bys); // 建立String物件,把陣列元素作為字串的內容
String s3 = new String(bys, 1, 3); //建立String物件,把一部分陣列元素作為字串的內容,引數offset為陣列元素的起始索引位置,引數length為要幾個元素
	
char[] chs = new char[]{’a’,’b’,’c’,’d’,’e’};
String s4 = new String(chs); //建立String物件,把陣列元素作為字串的內容
String s5 = new String(chs, 0, 3);//建立String物件,把一部分陣列元素作為字串的內容,引數o                   ffset為陣列元素的起始索引位置,引數count為要幾個元素

String s6 = new String(“abc”); //建立String物件,字串內容為abc

[點選並拖拽以移動]
​

在學習一個類時,不要盲目的把所有的方法嘗試去使用一遍,應該根據這個物件的特點分析這個物件應該具備哪些功能。若想操作可變的字串,可以用字串緩衝區。StringBuffer就是字串緩衝區,它是一個容器,可以裝很多字串,並能進行操作。

建立一個字串緩衝區物件。用於儲存資料。
StringBuffer sb = new StringBuffer();
sb.append("haha"); //新增字串
sb.insert(2, "it");//在指定位置插入
sb.delete(1, 4);//刪除
sb.replace(1, 4, "cast");//替換指定範圍內的內容
String str = sb.toString();

正則表示式是一個字串,使用單個字串來描述,用來定義匹配規則,匹配一系列符合某個句法規則的字串。在開發中,正則表示式通常被用來檢索,替換那些符合某個規則的文字。

DateFormate:

類Date表示特定的瞬間,精確到毫秒。Date有很多建構函式,可以把毫秒值轉化為日期物件。DateFormate是日期/時間格式化子類的抽象類,用來解析日期或時間。DateFormate是抽象類,一般需要使用子類SimpleDateFormat來建立物件

//建立日期格式化物件,在獲取格式化物件時可以指定風格
DateFormat df= new SimpleDateFormat("yyyy-MM-dd");//對日期進行格式化
Date date = new Date(1607616000000L);
String str_time = df.format(date);
System.out.println(str_time);//2020年12月11日

DateFormat可以將一個Date物件轉換為一個符合指定格式的字串,也可以將一個符合指定格式的字串轉化為一個Date物件。

 

Calendar

Calendar是日曆類,替換了許多Date的方法。將所有可能用到的時間資訊封裝為靜態成員變數,方便獲取。另一方面,Calendar是抽象類,在建立物件時並非直接建立,而是通過靜態方法建立,將語言敏感內容處理好,再返回子類物件

  1. public static Calendar getInstance() //獲取日期物件
  2. public int get(int field)   //獲取時間欄位值,年,月,日,時,分,秒
  3. public void add(int field,int amount)   //指定欄位增加某
  4. public final void set(int field,int value)//設定指定欄位的值
  5. public final Date getTime() //獲取該日曆物件轉成的日期物件

System:

System中代表程式所在系統,提供了對應的一些系統屬性資訊和系統操作。其類中的方法都是static,類名訪問即可。

  1. currentTimeMillis() 獲取當前系統時間與1970年01月01日00:00點之間的毫秒差值
  2. exit(int status) 用來結束正在執行的Java程式。引數傳入一個數字即可。通常傳入0記為正常狀態,其他為異常狀態
  3. gc() 用來執行JVM中的垃圾回收器,完成記憶體中垃圾的清除。
  4. getProperty(String key) 用來獲取指定(字串名稱)中所記錄的系統屬性資訊

Math:

Math類是包含用於執行基本數學運算的方法的數學工具類,像初等函式、對數、平方根等。其所有方法均為靜態方法,並且一般不會建立物件。比較常見的有:

abs方法,結果都為正數;ceil方法,結果為比引數值大的最小整數的double值;floor方法,結果為比引數值小的最大整數的double值;max方法,返回兩個引數值中較大的值;min方法,返回兩個引數值中較小的值;pow方法,返回第一個引數的第二個引數次冪的值;round方法,返回引數值四捨五入的結果;random方法,產生一個大於等於0.0且小於1.0的double小數。

Arrays:

Arrays類一般用來運算元組(比如排序和搜尋)的各種方法。如果指定陣列引用為null,則訪問此類中的方法都會丟擲空指標異常NullPointerException。比較常見的方法有:

sort方法,用來對指定陣列中的元素進行排序(元素值從小到大進行排序)

//源arr陣列元素{1,5,9,3,7}, 進行排序後arr陣列元素為{1,3,5,7,9}

int[] arr = {1,5,9,3,7};

Arrays.sort( arr );

toString方法,用來返回指定陣列元素內容的字串形式

int[] arr = {1,5,9,3,7};

String str = Arrays.toString(arr); // str的值為[1, 3, 5, 7, 9]

binarySearch方法,在指定陣列中,查詢給定元素值出現的位置。若沒有查詢到,返回位置為-1。要求該陣列必須是個有序的陣列。

int[] arr = {1,3,4,5,6};

int index = Arrays.binarySearch(arr, 4); //index的值為2

int index2= Arrasy.binarySearch(arr, 2); //index2的值為-1

大資料運算:

超過long型的資料一般不能成為整數,運算時可封裝成BigInteger物件。在BigInteger類中,實現四則運算都是方法來實現,並不是採用運算子。實現四則混合運算有,add、subtract、multiply、divide方法。double和float型別在運算中很容易丟失精度,造成資料的不準確性,Java中提供BigDecimal類可以實現浮點資料的高精度運算。