1. 程式人生 > >String類常用方法(補充)

String類常用方法(補充)

一.String類的方法

1.替換功能:

1).public String replace(char oldChar,char newChar):將字串中某一個字元用新的字元替換 2).public String replace(String oldStr,String newStr):將字串中某一個子字串用新 的字元

2.去除字串兩端空格:

public String trim()

3.兩個字串進行比較:

public int compareTo(String anotherString)  是Comparable介面中的方法(該介面可以實現一個自然排序) Comparator介面可以比較器排序
package day_11_10_29.string01;

public class StringTest7 {
	public static void main(String[] args) {
		// 定義字串
		String s1 = "helloworld";
		/**
		 * 1.public String replace(char oldChar,char newChar)
		 * 單替換功能:將字串中某一個字元用新的字元替換
		 */
		String r = s1.replace('e', 'a');
		System.out.println("r:"+r);
		System.out.println("-----------------");
		
		/**
		 * 2.public String replace(String oldStr,String newStr)
		 * 全部替換:將字串中某一個子字串用新 的字串去替代
		 * */
		String r1 = s1.replace("ell", "ass");
		System.out.println("r1:"+r1);
		System.out.println("-----------------");
		
		/**
		 * 3. public String trim();
		 * 刪除兩端空格
		 * */
		String s2 = " hello world " ;
		System.out.println("s2:"+"----"+s2+"----");
		String s3 = s2.trim();
		System.out.println("s3:"+"----"+s3+"----");
		
		/**
		 * 4. public int compareTo(String anotherString)
		 * 兩個字串進行比較:
		 * */
		/**
         * 遇到:看原始碼:comparTo()的原始碼(用在哪呢?)
         * 對原始碼解釋:
         *   1)先得出兩個字串長度較小的長度m
         *   2)從二者第一個字元開始比較,如果相等比較下一個字元,直到不同,輸出對應字元ASCII碼錶的差值
         *   3)如果字串遍歷到m的地方,則結束此時輸出的是兩個字串長度的差值
         */
		String s4 = "hello world";
		String s5 = "hel";
		String s6 = "hf";
		int a = s4.compareTo(s5);
		System.out.println("a="+a);//8 輸出的是兩個字串長度的差值
		System.out.println("-----------------");
		int b = s6.compareTo(s4);
		System.out.println("b="+b);//1 輸出對應字元ASCII碼錶的差值
		
	}

}

練習:鍵盤錄入一個字串,將該字串的第一個字母轉換成小寫,其餘的字母字元轉換成大寫(不考慮其他的字母字元) 分析:1.建立鍵盤錄入物件,錄入一個字串 2.擷取:substring(int begin,int end) 3.將上面獲取的字串轉換小寫 4.在擷取剛才錄入的這個字串,substring(int begin):從指定位置擷取到末尾,返回一個新的字串 5.將的得到新的字串---->轉換大寫 6.將3和5,使用concat()拼接:字串拼接方法
package day_11_10_29.string01;

import java.util.Scanner;

/**
 * 需求:鍵盤錄入一個字串,將該字串的第一個字母轉換成小寫,其餘的字母字元轉換成大寫(不考慮其他的字母字元)
 * */
public class StringTest4 {

	public static void main(String[] args) {
		
		//建立鍵盤錄入物件
		Scanner sc = new Scanner(System.in);
		//錄入並接收資料
		System.out.println("請輸入字串:");
		String s = sc.nextLine();
		
		//擷取接收到的字串的第一個字元
		String s1 = s.substring(0,1);
		
		//將第一個字母轉化成小寫
		String s2 = s1.toLowerCase();
		
		//擷取s中的其他字母
		String s3 = s.substring(1);
		
		//將其餘字母轉換成大寫
		String s4 = s3.toUpperCase();
		
		//將s2和s4拼接
		String result = s2.concat(s4);
		System.out.println(result);
	}

}

練習:鍵盤錄入一個字串,將字串進行反轉 分析:1.建立鍵盤錄入物件,錄入並接收一個字串
  2.定義空字串
  3.可以將字串轉換成字元陣列:toCharArray();   4.遍歷字元陣列,倒著遍歷.   5.遍歷之後獲取到字串中的每一個字元,然後使用空串進行拼接
package day_11_10_29.string01;

import java.util.Scanner;

/**
 *  需求:鍵盤錄入一個字串,將字串進行反轉
 * */
public class StringTest5 {
	public static void main(String [] args){
		//建立鍵盤錄入物件
		Scanner sc = new Scanner(System.in);
		//錄入並接收資料
		System.out.println("請輸入字串:");
		String s = sc.nextLine();
		String result = myReverse(s);  //
		System.out.println(result);
	}
	
	public static String myReverse(String s){
		//定義一個空字串
		String result = "";
		//將字串轉換成字元陣列
		char[] ch = s.toCharArray();
		//倒序遍歷字元陣列
		for(int i=ch.length-1;i>=0;i--){
			//拼接每一個字元
			result+=ch[i];
		}
		return result;
		
	} 
}