1. 程式人生 > >java:String類常用的一些方法

java:String類常用的一些方法

1、獲取長度:

String str = "i am a student.";  
int str1=str.length();

2、輸入下標,返回字元

String str = "i am a student.";//主串
char c = str.charAt(2);
System.out.println(c);//返回字元a

3、檢視某字元是否存在

String str = "i am a student.";//主串
boolean b = str.contains("a"); //子串
System.out.println(b);//是否存在該字元

4、輸入某字元,返回下標

String str = "i am a student.";//主串
int index = str.indexOf("a");
System.out.println(index); //返回下標

5、大小寫字母的互換

String str = "abc";
String str2 = str.toUpperCase(); //小寫轉大寫
String str3 = str.toLowerCase(); // 大寫轉小寫
System.out.println(str2);
System.out.println(str3);

6、字串的比較

String str1 = new String("abc");
String str2 = new String("ABC");
int a = str1.compareTo(str2);//a=32
int b = str1.compareToIgnoreCase(str2);//b=0
boolean c = str1.equals(str2);//c=false
boolean d =str1.equalsIgnoreCase(str2);//d=true

7、刪除字串中的空格字元

String str = new String("   123").intern(); //1
String str1 = str.replaceAll(" ","");
System.out.println(str1);
String str2 = new String("123   "); //2
String str3 = str2.replaceAll(" +","");
System.out.println(str3);

8、將字串變成一個byte陣列

private String str = "i am a student."; 
byte b[] = str.getBytes();  
System.out.println("轉換成byte陣列輸出為:" + new String(b));  

9、String類中常見的一些問題

String srt1 = “hello”;
String str2 = “hello”;//str1 == str2;返回值為true,指向的是同一個地址。 
String srt1 =  new String(“hello”);
String str2 =  new String(“hello”);//str1 == str2;
返回值為false,指向的是不同的地址。
此時應使用System.out.println(str1.equals(str2));
//String srt1 =  new String(“hello”).intern();
  String str2 =  new String(“hello”);
  str1 == str2;//此時返回的也為true;


  String srt1 =  “helloworld”;
  String str2 =  “hello”+”world”;//直接優化為helloworld,所以和str1地址一樣       System.out.println(str1 == str2);//此時返回的是true; 


  String srt =  “helloworld”;
  String str2 =  “hello”;
  String str2 =  str2+”world”;
       //new StringBuilder();
       //s.append(“hello”);
      //s.append(“world”);
      //s.toString(); StringBuilder->String;
System.out.println(str == str3);
   //地址不同,所以此時返回的是false;