Java基础-String和StringBuilder类型(11)
String類概述
字符串是由多個字符組成的一串數據
字符串可以看成是字符數組
構造方法
public String(String original)
public String(char[] value)
public String(char[] value,int offset,int count)
直接賦值也可以是一個對象
注意:字符串是比較特殊的引用類型,直接輸出該字符串對象打印的不是地址值而是該對象的值.
兩個string不能用==判斷是否相等,因為引用數據類型比較的是引用數據類型的地址值是否相等.
String s1 = new String("hello");String s2 = "hello";System.out.println("s1:"+s1);System.out.println("s2:"+s2);System.out.println("s1==s2:"+(s1==s2)); //false String s3 = "hello";System.out.println("s1==s3:"+(s1==s3)); //falseSystem.out.println("s2==s3:"+(s2==s3)); //true代碼的內存圖如下
字符串的內容是存儲在方法區的常量池里面的,是為了方便字符串的重復使用.
當用new String()時,堆中的string對象值為常量池中字符串的地址,string變量存的是堆中對象的地址.
當直接賦值時,strig變量的值為常量池中字符串的地址.
String類的判斷功能
boolean equals(Object obj)
boolean equalsIgnoreCase(String str)
boolean startsWith(String str)
boolean endsWith(String str)
String類的獲取功能
int length()
char charAt(int index)
int indexOf(String str)
String substring(int start)
String substring(int start,int end) //包括左邊的不包括右邊的
String類的轉換功能
char[] toCharArray()
String toLowerCase()
String toUpperCase()
String類的其他功能
去除字符串兩端空格
String trim()
按照指定符號分割字符串
String[] split(String str)
StringBuilder類概述
我們如果對字符串進行拼接操作,每次拼接,都會構建一個新的String對象,既耗時,又浪費空間。而StringBuilder就可以解決這個問題
StringBuilder是一個可變的字符串。字符串緩沖區類。
String和StringBuilder的區別:String的內容是固定的.StringBuilder的內容是可變的.
StringBuilder類的常用方法
添加功能
public StringBuilder append(任意類型)
反轉功能
public StringBuilder reverse()
StringBuilder和String相互轉換
StringBuilder-->String: ? stringBuilder.toString();
String-->StringBuilder: ? new StringBuilder(str);
轉載于:https://www.cnblogs.com/aeolian/p/7759783.html
總結
以上是生活随笔為你收集整理的Java基础-String和StringBuilder类型(11)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: windows和linux互传文件,用户
- 下一篇: 原创:能力强大到能掌控自己人生的女人都是