java字元串的功能可以說非常強大, 它的每一種方法也都很有用. java字元串中常用的有兩種字元串類, 分別是String類和StringBuffer類. Sting類 String類的對象是不可變的. 創建String 常用方法 實例: 比較性質的方法 查找方法 替換方法 其他方法 將數字化的字 ...
java字元串的功能可以說非常強大, 它的每一種方法也都很有用.
java字元串中常用的有兩種字元串類, 分別是String類和StringBuffer類.
Sting類
String類的對象是不可變的.
創建String
String() String(String str) String(char value[]) //用字元數組生成一個串對象 String(char value[], int offset, int count) //用字元數組value的offset位開始的count個字元,建立一個字元串對象
常用方法
int length() String toLowerCase()//返回當前串的小寫 String toUpperCase()//返回當前串的大寫 char[] toCharArray()//返回當前串的字元串數組 String trim()//刪除當前字元串的前部和後部空格並返回新串
實例:
String str = new String(" Hello world "); str.length(); //返回str的長度為11 str.toLowerCase();//將str轉換為小寫, " hello world " str.toUpperCase();//將str轉換為大寫, " HELLO WORLD " char[] strChar = str.toCharArray();//將str轉換為strChar字元數組 str.trim();//刪除前後的空格, "Hello world"
比較性質的方法
boolean regionMatches(int toffset, String str, int ooffset, int len)//比較從本串的toffset開始的len個字元和str從ooffset開始的len個字元是否一致, 一致則返回true(可用來檢測字元換字元串在當前串中出現的次數) boolean regionMatches(boolean IgnoreCase, int toffset, String str, int ooffset, int len)//同上, IgnoreCase決定是否忽略大小寫, IgnoreCase為true時忽略大小寫 String concat(String str)//返回當前字元串與str串連接後的新串 int compareTo(String str)//比較字元串中相同位置的Unicode, 若兩串相等返回0, 否則當前串大於str返回比較字元的差值 int compareToIgnoreCase(String str)//忽略大小寫比較, 同上 boolean equals(Object anObj)//比較兩個對象的值是否相等.這裡比較兩個字元串對象是否相等 boolean equalsIgnoreCase(String anotherString)//忽略大小寫, 比較兩個字元串對象是否相等 boolean startsWith(String prefix[, int toffset])//判斷當前字元串從toffset開支是否以參數prefix開頭, []中括弧表示可省略 boolean endsWidth(string prefix[, int toffset])//判斷當前字元串從toffset開始是否以參數prefix結尾
查找方法
//字元ch查找, 註意是字元 int indexOf(int ch)//從前向後找第一個字元ch出現的位置, 未找到返回-1 int indexOf(int ch, int fromIndex)//從fromIndex位置開始向後找第一個字元ch出現的位置, 未找到返回-1 int lastIndexOf(int ch)//從後向前找第一個字元ch出現的位置, 未找到返回-1 int lastIndexOf(int ch, int fromIndex)//從fromIndex位置開始前後找第一個字元ch出現的位置, 未找到返回-1 //子串str查找 int indexOf(String str)//從當前字元串開頭向後查找子串str第一次出現的位置, 未找到返回-1 int indexOf(String str, int fromIndex)//從當前字元串的fromIndex位置向後查找子串str第一次出現的位置, 未找到返回-1 int lastIndexOf(String str)//從當前字元串結尾向前查找子串str第一次出現的位置, 未找到返回-1 int lastIndexOf(String str, int fromIndex)//從當前字元串的fromIndex位置向前查找子串str第一次出現的位置, 未找到返回-1 char charAt(int index)//返回當前字元串index位置處的字元
替換方法
//替換 String replace(char oldchar, char newchar)//將字元串中所有oldcha字元r替換為newchar字元 String replaceFirst(String regex, String replacement)//將字元串中第一個與正則表達式regex匹配的子串用新串replacement替換 String replaceAll(String regex, String replacement)//將字元串中所有與正則表達式regex匹配的子串用新串replacement替換 String substring(int start[, int end])//返回start到end-1返回的子串, 若省略end, 則為start到串尾. String[] split(String regex)//返回當前字元串通過正則表達式分割的字元串數組
其他方法
將數字化的字元串轉換為基本類型
public static byte parseByte(String s) throws NumberFormatException public static short parseShort(String s) throws NumberFormatException public static short parseInt(String s) throws NumberFormatException public static long parseLong(String s) throws NumberFormatException public static float parseFloat(String s) throws NumberFormatException public static double parseDouble(String s) throws NumberFormatException
用法舉例:
int a = Integer.parseInt(“23”);
其他類型轉換為字元串
public static String valueOf(int n) public static String valueOf(char[] data) public static String valueOf(Object obj) public static String copyValueOf(char[] data)等同於valueOf(char[] data)
用法舉例:
String.valueOf(334);
StringBuffer類
StringBuffer()//創建空StringBuffer對象 StringBuffer(int length)//創建一個長度為length的StringBuffer對象 StringBuffer(String str)//創建一個str字元串StringBuffer對象 StringBuffer append(Object obj)//將對象obj添加到StringBuffer對象中 StringBuffer insert(int position, Object obj)//將對象obj插入到StringBuffer對象中的position位置 StringBuffer setCharAt(int position, char ch)//用字元ch替換StringBuffer對象中的position位置 StringBuffer deleteCharAt(int position)//刪除position位置的字元 StringBuffer replace(int start, int end, String str)//將StringBuffer對象中start到end-1的位置用字元串str替換