目錄
- 一、API概述
- 什麼是API?
- API的使用
- 二、String類
- 1.概述
- 2.常用構造方法:
- 3.String類常用的方法:
- 三、 StringBuffer 和 StringBuilder
- 1.StringBuffer
- 1.常用方法:
- 2.StringBuilder
- 1.常用方法:
- 3. StringBuffer 和 StringBuilder差別
- 今天的分享就到這裡啦!!~希望對大家有幫助的話多多支援下 ~
- 分享知識,快樂程式設計,歡迎攻城獅們多多交流!!!~
一、API概述
什麼是API?
API(Application Programming Interface,應用程式程式設計接口)是一些預先定義的函數,目的是提供應用程式與開發人員基于某軟體或硬體的以通路一組例程的能力,而又無需通路源碼,或了解内部工作機制的細節。
API的使用
- 打開API幫助文檔
十、JavaSE進階之API文檔及常用類(String)。 - 單擊顯示出現目錄等功能
3. 檢視Java中的包以及包中的類
二、String類
1.概述
String是不變對象,即:字元串對象建立後,表示的字元内容不可變,若改變必定建立新對象
java對于字元串的優化:
字元串常量池,這是在堆記憶體中開辟的一塊空間,用于儲存所有使用字面量形式建立的字元串對象,當再次使用該字面量建立新的字元串時,會直接重用而不會再建立新的以達到節省記憶體開銷的目的.
public class Text {
public static void main(String[] args) {
String s1="abcdef";
String s2=new String("xy");
String s3=s1+s2;
System.out.println(s1+"\t"+s2+"\t"+s3);
}
}
2.常用構造方法:
i.
String(char[] value) 配置設定一個新的 String,它代表了目前包含在字元數組參數字元序列。
ii.
String(char[] value, int offset, int count) 配置設定一個包含字元與字元數組數組參數的新 String。
iii.
String(String original) 初始化新建立的對象 String是以它代表相同的字元序列的說法;換句話說,新建立的字元串是一個副本的參數字元串。
iiii.
String() 初始化新建立的 String對象,它代表了一個空字元序列。
3.String類常用的方法:
(1)
String substring(int start,int end) 截取目前字元串中指定範圍内的字元串
String s1 = newString("abcdef");
String str1=s1.substring(2,5);
System.out.println(str1);
(2)
charAt(int index) 擷取目前字元串中指定位置對應的字元
String s1 = new String("abcdef");
char c1=s1.charAt(2);
System.out.println(c1);
(3)
compareTo(String anotherString) 比較兩個字元串的字典。
String s1 = "abcdef";
String s2="abd";
int a=s1.compareTo(s2);
System.out.println(a);
(4)
String toUpperCase() String toLowerCase() 将目前字元串中的英文部分轉換為全大寫或全小寫
String str="cvbdfe";
System.out.println(str.toUpperCase());
String str2="ACBDFE";
System.out.println(str2.toLowerCase());
(5)
String trim() 去除目前字元串兩側的空白字元
String str = " avcd ";
System.out.println(str.trim());
(6)
int len=str.length(); 擷取目前字元串的長度(字元個數)
String str="chsujahsnmje";
System.out.println(str.length());
(7)
boolean startsWith(String str) boolean endsWith(String str) 判斷字元串是否是以給定的字元串開始或結尾的
String str="acbvgdem";
System.out.println(str.startsWith("a"));
System.out.println(str.endsWith("m"));
(8)
equals(Object anObject)字元串相等比較,不忽略大小寫
String s1="abcd";
String s2="abcd";
System.out.println(s1.equals(s2));
(9)
equalsIgnoreCase(String anotherString)字元串相等比較,忽略大小寫
String s1="abcd";
String s2="ABCd";
System.out.println(s1.equalsIgnoreCase(s2));
(10)
indexOf(int ch) 取得指定字元在字元串的位置
String s1="abcd";
System.out.println(s1.indexOf("b"));
(11)
lastIndexOf(int ch) 傳回在指定字元的最後一個發生的字元串内的索引。
String s1="abcdbdchb";
System.out.println(s1.lastIndexOf("b"));
(12)
replaceAll(String regex, String replacement)替換字元串中指定的内容
String str="我是中國人";
System.out.println(str.replaceAll("中國","陝西"));
(13)
split(String regex) 根據指定的表達式拆分字元串
String str="abccba";
String[] s=str.split("c");
System.out.println(Arrays.toString(s));
(14)
. valueOf,将其他類型轉換成字元串
System.out.println(String.valueOf(12));
System.out.println(String.valueOf('v'));
System.out.println(String.valueOf(123456L));
System.out.println(String.valueOf(23.45F));
System.out.println(String.valueOf(123.95));
System.out.println(String.valueOf(true));
三、 StringBuffer 和 StringBuilder
1.StringBuffer
StringBuffer 稱為字元串緩沖區,它的工作原理是:預先申請一塊記憶體,存放字元序列,如果字元序列滿了,會重新改變緩存區的大小,以容納更多的字元序StringBuffer 是可變對象,這個是 String 最大的不同。
如果使用大量的字元串拼接時,使用StringBuffer類。(底層為初始化16個長度的byte數組)
1.常用方法:
//拼接字元串調用append();方法
StringBuffer sbStr = new StringBuffer();
sbStr.append("a");
sbStr.append("b");
System.out.println(sbStr);
2.StringBuilder
1.String的優化措施僅照顧重用性,是以頻繁修改字元串會帶來記憶體開銷大,運作效率差的結果對此,java提供一個專門用于修改字元串的API
2.其内部維護一個可變的char數組,所有的修改都是在這個數組中進行的,是以開銷小,性能好,并且其提供了
便于修改字元串的一系列方法,包括了增,删,改,插等基本操作
1.常用方法:
StringBuilder builder=new StringBuilder();
//拼接
builder.append("為了拯救世界!");
System.out.println(builder);
//删除
builder.delete(0,2);
System.out.println(builder);
//插入
builder.insert(0,"我們");
System.out.println(builder);
//修改
builder.replace(2,5,"改變世界");
System.out.println(builder);
為了拯救世界!
拯救世界!
我們拯救世界!
我們改變世界界!
3. StringBuffer 和 StringBuilder差別
StringBuffer中的方法有synchronized關鍵字修飾表示在多線程下是安全的StringBuilder線程不安全