1. 程式人生 > >java-String及其常用API

java-String及其常用API

package day_7_23;
/**
 * String是不可變物件
 * java.lang.String使用了final修飾,不能被繼承;
 * 字串底層封裝了字元陣列及針對字元陣列的操作演算法;
 * 字串一旦建立,物件永遠無法改變,但是字串引用可以重新賦值
 * java字串在記憶體中採用Unicode編碼方式,任何一個字元對應兩個位元組的定長編碼
 *
 *int indexOf(String str):返回在字串中str第一次出現的位置,若沒有返回-1
 *int indexOf(String str,int fromIndex):從字串的fromIndex中開始檢索
 *int lastIndexOf(String str):str在字串上出現多次,則在最後一次出現的位置
 *
 *String substring(int strat):擷取從start(包括)下標開始到字串結尾的字串並返回
 *String substring(int start,int end):擷取當前字串指定範圍內的字串並返回,在java api中通常使用兩個數字表示範圍時,都是“含頭不含尾”
 *
 */
public class Str { public static void main(String[] args) { String s1="123a"; String s2="123a"; String s3="123b"; System.out.println(s1==s2);//true System.out.println(s1==s3);//false String s4=123+"a";//編譯器編譯程式時若發現一個計算表示式則所有內容都是直接量,就直接算成“123a”
System.out.println(s1==s4);//true String s="123"; String s5=s+"a";//編譯器發現左邊為變數就重新分配地址值 System.out.println(s1==s5);//false //字串的下標:012345678 String str="839756abc"; System.out.println(str.indexOf("756"));//3 System.out.println(str.indexOf("a"
,6));//6 System.out.println(str.substring(2));//9756abc System.out.println(str.substring(0, 2));//83 System.out.println(str.charAt(8));//c String a="http://www.baidu.com"; String b="http://www.jindong.com"; System.out.println(getHostName(a)+","+getHostName(b)); //char charAt(int index):返回當前字串中指定位置的字元-----檢視字串是否是迴文 String a1="上海自來水來自海上"; for(int i=0,j=a1.length()-1;i<a1.length()/2;i++,j--) { if(a1.charAt(i)!=a1.charAt(j)) { System.out.print("不"); break; } } System.out.println("是迴文"); /**String trim():去除當前字元兩邊的空白字元**/ String use=" kkk KK "; System.out.println(use.trim()); //boolean startsWith(String str):判斷字串是否以給定字串開始 //boolean endsWith(String str):判斷字串是否以給定字串結束 String us="學生.txt"; System.out.println("學生.txt "+us.endsWith(".txt")); /** * static String valueOf(...) * String提供了一組過載的靜態方法valueOf * 作用是將java其他型別轉換為字串 * 常用於 */ int a3=123; double a4=123456.65; float a5=90.3f; System.out.println(String.valueOf(a3)+";"+String.valueOf(a4)+";"+a5); /** * String toUpperCase():將當前字串中的英文部分轉換為全大寫 * String toLowerCase():將當前字串中的英文部分轉換為全小寫 */ String tu="java我愛學習"; System.out.println(tu.toUpperCase()); } public static String getHostName(String host) { int start=host.indexOf(".")+1;//獲取第一次出現.的下個字元的下標 int end =host.indexOf(".",start); return host.substring(start,end); } }