Java中常見的API
阿新 • • 發佈:2020-12-18
技術標籤:java
API
API概述
API 應用程式程式設計介面
是對java預先定義的類或介面功能和函式功能的說明文件,目的是提供給開發人員進行使用幫助說明.
基本資料型別包裝類
Java中的基本資料型別不是面向物件的 , 在設計類時為每個基本資料型別設計了一個對應的類進行代表,這樣和八個基本資料型別對應的類統稱為包裝類
包裝類 這些類封裝了一個相應的基本資料型別數值,併為其提供了一系列操作方法.
主要用途 作為和基本型別對應的類的型別存在
包含每種基本資料型別的相關屬性 如最大值 最小值 以及相關操作方法
int num=10;
System. out.println(num);
Integer num1=new Integer(33);
Integer num2=new Integer("15");//建立 Integer物件
System.out.println(Integer.MAX_VALUE);//最大的int型數(231-1)
System.out.println(Integer.MIN_VALUE);//最小的int型數(-231)
System.out.println(Integer.toBinaryString(12));//轉二進位制
System. out.println(Integer.toHexString(16));//轉十六進位制
Integer num3=new Integer(45);//比較 返回值為-1 0 1
System.out.println(num3.compareTo(num1));
System.out.println(Integer.max(45,56)); //比較返回較大的值
System.out.println(Integer.min(75,23));//返回比較小的值
System.out.println(Integer.parseInt("89"));//將字串轉為int型
System.out. println(num1.intValue());//將Integer值轉換為
System.out.println(Integer.toString(45));//將int轉字串
System.out.println(Integer.valueOf(45));//將基本型別轉換為引用型別
自動裝箱和自動拆箱
自動裝箱 將基本型別轉換為引用型別
自動拆箱 將引用型別轉化為基本型別
在使用valueOf(127)建立物件時,值如果在-128-127之間 如果多個值相同 指向記憶體中的同一個地址
使用new+構造方法() 方式 不管值是否在此區間中 都會創立新的物件
int sum=num1; //自動裝箱 自動呼叫ValueOf()方法
System.out.println(sum);
int sum2=66;
Integer num4=sum2;//自動拆箱 自動呼叫intValue()方法
System.out.println(num4);
String類
字串是由多個字元組成的一串資料(字元序列)的字串常量,Java中所有字串都是String類的例項.
兩種建立形式:
-
String a=“abc”;
-
new + 構造方法(); 只要new+構造方法 建立的物件在記憶體中都有一個獨一無二的記憶體空間
String s = new String("abc");
String的兩種比較
String a="asd";
String b="asd";
System.out.println(a.equals(b));//比較內容
System.out.println(a==b);//比較地址 a的地址等於b的地址
/*
第一次建立 在字串常量池中檢測有無 沒有就在池中創鍵一 個物件
第二次建立 如果常量池中存在 直接指向常量池中的物件即 可
*/
String n1=new String("aaa");
String n2=new String("aaa");
System.out.println(n1.equals(n2));//比較內容
System.out.println(n1==n2);//比較地址 new一次就會 建立一次物件 物件的地址就會不同
String n="aaa";
n+="bbb";
n+="ccc";
System.out.println(n);
/*字串值為常量 不能改變 一旦改變 即就在記憶體中建立一 個新的物件*/
String類中的方法
String a=new String("sdfghjda");
String b=new String("bbb");
String c=new String();
System.out.println(a.equals(b));//對比
System.out.println(a.equalsIgnoreCase("AaA"));//不區分大小寫比較
System.out.println(a.contains("a"));//判斷字串中是否包含
System.out.println(c.isEmpty());//判斷字串是否為空
System.out.println(a.startsWith("d"));//判斷字串是否以指定字首開頭
System.out.println(a.endsWith("a"));//判斷字串是否以指定字元結尾
System.out.println(a.length());//獲取字串的長度
System.out.println(a.charAt(4));//獲取指定位置上的字元
System.out.println(a.indexOf("d"));//獲取該字元的位置
System.out.println(a.indexOf(4));
System.out.println(a.indexOf("d",3));//返回指定字元第一次出現的字串內的索引,以指定的索引開始搜尋。
System.out.println(a.indexOf("gh",2));
System.out.println(a.substring(2));//擷取從指定位置往後的字串
System.out.println(a.substring(2,5));//擷取中間從開始位置到結束位置的字串
String a="abc";
byte[] a1=a.getBytes();
System.out.println(Arrays.toString(a1));//將字元 串轉化為byte陣列
String b=new String(a1);
System.out.println(b); // 解碼
String c=new String(a);
char [] c1=c.toCharArray();
System.out.println(Arrays.toString(c1));//將字元 串轉化為字元陣列
String d="中文";
byte[] d1=d.getBytes("UTF-8");
System.out.println(Arrays.toString(d1));
byte[] d2=d.getBytes("gbk");
System.out.println(Arrays.toString(d2));
String d3=new String(d1,"gbk");
System.out.println(d3);
String d4=new String(d2,"UTF-8");
System.out.println(d4);
String e="asDFGhjKlNhB";
System.out.println(e.toUpperCase());//全部轉化為大寫
System.out.println(e.toLowerCase());//全部轉化為小寫
System.out.println(e.concat("**"));//拼接 將指定字串拼接到原來字串的後面\
String f="name=dang&age=5&sex=男";
String f1[]=f.split("&");
System.out.println(Arrays.toString(f1));//將一整個字串分開
StringBuffer類
執行緒安全的可變字元序列
如果對字串進行拼接,每次拼接都會構造一個新的String物件 ,既耗時 , 又會浪費空間
構造方法
public StringBuffer()
public StringBuffer(String str)
StringBuffer類中的方法
新增功能
public StringBuffer append(String str)
public StringBuffer insert(int offset,String str)
刪除功能
public StringBuffer deleteCharAt(int index)
public StringBuffer delete(int start,int end)
替換功能
public StringBuffer replace(int start,int end,String str)
反轉功能
public StringBuffer reverse()
使用方法同String類
Notes:
StringBuilder類功能和StringBuffer功能完全一致, StringBuffer是執行緒安全的
String類 StringBuffer類 StringBuilder區別
String:是字元常量,適用於少量的字串操作的情況
StringBuilder:適用於單執行緒下在字元緩衝區進行大量操作的情況
StringBuffer:適用多執行緒下在字元緩衝區進行大量操作的情況