1. 程式人生 > 資訊 >雙 11 提前購:優酷/芒果 TV/百度文庫/百度網盤等會員 3 折起

雙 11 提前購:優酷/芒果 TV/百度文庫/百度網盤等會員 3 折起

  • java中所有被雙引號引起來的都是String型別的,
  • 一旦建立,不可改變,
  • 儲存於方法區的字串常量池,已建立的字串一直存在於字串常量池中,再次使用這個字串時,不會再新建一個了,而是直接使用已存在的這個字串。(無論何種方式建立的字串都是如此)
  • 字串常量池中的一個字串也是一個字串物件

String的構造方法

  1. String(byte[] bytes)
  • byte[]陣列會將其中的數字,轉換成對應的字元
  • 例如:byte[] bytes={97,98,99}
    String s1=new String(bytes)//輸出abc
  1. String(byte[] bytes,int offset,int length)
  • 第二個引數為起始的位置
  • 第三個引數表示字串的長度
  • 例:String s1=new String(bytes,1,2) //輸出bc
  1. String(char[] chars)
    與1類似

  2. String(char[] chars,int offset,int length)
    與2類似

還有兩個最常用的
String s="";
String s=new String("");

字串中常用的方法

1.char charAt(int index)
-用法: char c = "中國人".charAt(1)------>結果:'國'
-作用:返回字串中第index個字元。

2.int compareTo()

  • 作用:字串之間比較大小的方法(不用> <比較),大於為1,小於為-1,等於為0
  • 與equals區別:equals只能比較兩個字串是否相等,而compareTo不但能比較是否相等,還能判斷誰大誰小
  1. boolean contains()
  • 用法: str1.contains(str2)
  • 作用: 判斷str1是否包含str2
  1. boolean endsWith()
  • 用法:str1.endsWith(str2)
  • 作用:判斷str1是否以str2結尾
  1. boolean equalsIgnoreCase()
  • 用法:str1.equalsIgnoreCase(str2)
  • 作用:比較兩個字串是否相等,且忽略大小寫
  1. byte[] getBytes()
  • 作用:將字串轉換成byte[]
  1. int indexOf()
  • 用法:"adcdefg".indexOf("def")------>結果為3
  • 作用:判斷某個子字串在當前字串中第一次出現的索引
  1. boolean isEmpty()
  • 作用:判斷某個字串是否為空串(""),不是null
  1. int length()
  • 作用:得到字串的長度
  • 得到陣列的長度是呼叫陣列的length屬性,得到字串長度是呼叫字串的length()方法
  1. int lastIndexOf()
  • 作用:判斷某個字串在其父串中最後一次出現的索引
  1. String replace(charSequent 被替換的,charSequent 替換的)
  • charSequent是String的父介面
  • 用後面一個引數 替換字串中含有的所有前一個引數字串(替換所有)
  1. String[] split();
  • 用法:"1998-04-10".split("-")------->結果返回一個字元陣列String[] s={"1998","04","10"}
    以-為分隔符,將字串拆分
  1. boolean startsWith()
  • 作用:判斷當前字串是否以某個字串開始
  1. String subString(int beginIndex)
  • "1234567".subString(3)----->4567
  • 從第3個索引開始擷取字串
  • 引數是起始下標
  1. String subString(int beginIndex,int endIndex)
  • "1234567".subString(3,6)---->456
  • [beginIndex,endIndex) 左閉右開,開始包含,結束不包含
  1. char[] toCharArry()
  • 作用:字串轉換為一個char型別的陣列
  1. String toLowerCase()/toUpperCase()
    轉換成小寫/大寫

  2. String trim()
    去除字串前後空白(中間的空白不去)

  3. String valueOf()

  • String的靜態方法,直接用String.valueOf()呼叫
  • 將引數中的非字串,轉換為字串