java:String類常用的一些方法
阿新 • • 發佈:2018-12-17
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;