String和StringBuffer類

概述

Java中使用String和StringBuffer類來處理字符串。

String類支持靜態(不變的)的字符串。StringBuffer類則支持可修改的字符串。

String和StringBuffer都支持16位的Unicode字符。

String類


用String類創建的字符串是隻讀的。

當使用“+”運算符將一些字符加到某String對象上時,結果產生了新的對象,而不是原來String對象的一個修改值。

使用==和equals()比較String的區別:
“==”比較對象是否相等
equals()方法比較對象的內容是否相同

String類的重要方法

  • equals():比較兩字符串的內容是否相同,區分大小寫
  • equalsIgnoreCase():不區分大小寫
  • charAt():此方法返回字符串內位置在索引處的字符。第一個字符的位置是0,最後一個字符的位置是length()-1
  • length():返回字符串中的字符數
  • trim():此方法返回一個新String對象,它將調用的String對象中開頭和結尾的空白字符串切除掉。
  • toLowerCase():返回一個新字符串,表示這個String的小寫形式
  • toUpperCase():返回一個新字符串,表示這個String的大寫形式
  • indexOf():此方法搜索某字符或子串的第一次出現的位置值。如果他不能找到字符或子串,那麼返回-1。否則,此方法返回子串所在的位置值。
  • lastIndexOf():此方法搜索某字符或子串的最後一次出現的位置值
  • subString():返回原字符串的子串。此方法有兩個版本:
    subString(int beginIndex)
    subString(int beginIndex,int endIndex)
  • toString()方法
    任何類都有這個方法。
    用來將一個對象轉換成String
    用來將一個基本類型轉換成String
    Object類定義缺省的toString()方法,它返回類名稱和它的引用的地址
    許多類覆蓋toString()以提供更有用的信息
    對於String來說,這個方法返回它自身。

StringBuffer類

Java通過聲明和操作StringBuffer類的對象來處理大部分字符串運算。
      構造器:
      StringBuffer():構造一個空的字符串緩衝區
      StringBuffer(int length):構造具有指定初始長度的字符串緩衝區
      StringBuffer(String initialString):根據初始字符串構造緩衝區
      注意:StringBuffer類不是從String類繼承而來

StringBuffer類重要方法
      append()
      insert()
      setCharAt()
      reverse()
      toString()

public class StringBufferTest {
  public static void main(String args[]) {
    StringBuffer strBuf = new StringBuffer("ABCDEFG");

    strBuf.reverse(); //now strBuf is "GFEDCBA"
    strBuf.reverse(); //now strBuf is "ABCDEFG"

    strBuf.insert(2, "-"); //now strBuf is "AB-CDEFG"
    strBuf.insert(5, "-"); //now strBuf is "AB-CD-EFG"
    strBuf.insert(8, "-"); //now strBuf is "AB-CD-EF-G"

    strBuf.setCharAt(2, '+'); //now strBuf is "AB+CD-EF-G" 替換"-"
    strBuf.setCharAt(5, '+'); //now strBuf is "AB+CD+EF-G" 替換"-"
    strBuf.setCharAt(8, '+'); //now strBuf is "AB+CD+EF+G" 替換"-"

    //String str = strBuf.toString();
    System.out.println(strBuf.toString());
  }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章