1. 程式人生 > >_029_String的方法

_029_String的方法

=================

構造方法: String(byte[] bytes)            通過使用平臺的預設字符集,解碼,指定的 byte 陣列,構造一個新的 String。將ASCII陣列轉換字串          String(char[] value)            分配一個新的 String,使其 表示 字元陣列引數中當前  包含的  字元序列。就是說把字元陣列轉到字串

方法:  1 獲取 int length() 獲取字串的字元個數 char charAt(int index)獲取指定位置的字元,但是可以用字串接受

2判斷 boolean contains包含(CharSequences字元序列)意思是是否包含指定序列 boolean equalsIgnoreCase(String anotherString)忽略大小寫的情況下是否相等

3 查詢 int indexOf(String str)查詢子串中第一次出現的索引值,找不到返回-1 int lastIndexOf(String str)查詢子串中最後一次出現的索引值

4 轉換 char[] toCharArray(); 將字串轉換為字元陣列,和構造方法String(char[] value 把字元陣列轉到字串) 相反 byte[] getBytes(); 將字串轉換位位元組陣列,字串到ASCII陣列。和構造方法String(byte[] bytes 將ASCII陣列轉換字串) 相反 String toUpperCase()//轉到大寫 String toLowerCase()//轉到小寫    static String    valueOf(char[] data) 將字元陣列轉換到String,和構造方法一樣,但是不可能總是建立物件           返回 char 陣列引數的字串表示形式。            5 替換刪除切割  String replace(char oldChar,char newChar)文字替換 String[] split(String regex)切割,用什麼字串切換,相當於易語言的文字分割 String trim修剪()去首尾空格,相當於刪首尾空 ,中間空格不去       String subString(int beginIndex,int endIndex)//擷取一段字元

注意:

如果一個字元陣列的長度為2,而裡面只有一個字元,把它轉換到字串便會多一個空格,所以需要刪除首位空

需求: 先建立一個字串1,轉換到ASCII陣列,然後轉換到字串2,然後轉換到字元陣列,然後轉換到字串3,然後遍歷出字串3的每一

個字元轉換為數字後存到另一個數組裡面,然後把這個陣列轉換到字串4,然後把字串3和字串4比較,然後把

字串4的一些文字替換成O,返回string5,然後檢視這個O在字串4裡第一次出現的位置和最後一次出現的位置,擷取這段文字返回

string6然後再用O切割文字string6(因為中間可能還有O),然後輸出

	public static void main(String[] args)
	{
		String str1 = "aaaa吾乃泰坦之神吾乃荒天帝吾乃哦彌陀佛aaaa";
		byte[] byte1 = str1.getBytes(); //轉換到位元組集
		System.out.println(Arrays.toString(byte1));
		String str2 = new String(byte1); //把位元組集轉到字串
		System.out.println(str2);
		char[] char1 = str2.toCharArray();//把字串轉換到字元陣列
		String str3 = new String(char1); //把字元陣列轉換到字串
		 System.out.println(str3);
		char[] char2 = str3.toCharArray();

		char[] char3 = new char[str3.length()];
		byte[] byte2 = new byte[str3.length()];
		String string4 = null;

		for (int i = 0; i < char2.length; i++)
		{
			char3[i] = char2[i];
			String temp = new String(char3); 
			temp = temp.trim();// 要刪除額外的空格,因為
			//如果一個字元陣列的長度為2,而裡面只有一個字元,把它轉換到字串便會多一個空格,所以需要刪除首位空
			byte2 = temp.getBytes();
			temp = new String(byte2);
			temp = temp.trim();// 要刪除額外的空格
			string4 = temp;
		}
		System.out.println(string4);
		System.out.println(string4.equals(str3)); // true
		System.out.println(string4 == str3); // false
		String string5 = string4.replace("吾", "O"); //替換字串
		int start = string5.indexOf("O"); //查詢子串中第一次出現O索引值
		int end = string5.lastIndexOf("O"); //查詢子串中最後一次出現O索引值
		System.out.println(start);
		System.out.println(end);
		String string6 = string5.substring(start, end); //擷取字串
		System.out.println(string6);
		String[] string7 = string6.split("O"); //分割字串

		for (int i = 0; i < string7.length; i++)
		{
			System.out.println(string7[i]);
		}

	}