程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 如何用java自己實現String類的trim()方法功能

如何用java自己實現String類的trim()方法功能

編輯:關於JAVA
/**
 * 仿寫String的 trim()方法
 * @author zhonglinsen
 * 2016-3-1 下午
 */
public class StringExer {
	public static void main(String[] args) {
		String str1="abcdfef dfsd";
		String str2="  abcd fd";
		String str3="adbc fd  ";
		String str4="  fdf fdfd   ";
		String str5="       ";
		
		//System.out.println(testTrim(str1));
		//System.out.println(testTrim(str2));
		//System.out.println(testTrim(str3));
		//System.out.println(testTrim(str4));
		System.out.println(testTrim(str5));
		
	}
	
	/**
	 * 仿照String的trim()
	 *URL:http://www.bianceng.cn/Programming/Java/201608/50364.htm
	 * @param strArg:需要進行去掉前後空格符的字符串
	 * @return:返回字符串的副本,該副本進行去掉了首尾空格符
	 */
	public static String testTrim(String strArg){
		
		char[] cVal=strArg.toCharArray();
		int p1=0;
		int len=cVal.length;
		
		//從首到尾進行遍歷,如果發現了第一個不是  ' ' 就break:表示終止了遍歷,找到了首部到尾部第一個不為 ' ' 的位置
		while(p1 < len){
			if (cVal[p1] == ' ') {
				p1 += 1;
			}else{
				break;
			}
		}
		
		//這說明  strArg 壓根就是由空格字符組成的字符串
		if (p1 == len) {
			return "";
		}
		
		//從尾部到首部進行遍歷,如果發現了第一個不是  ' ' 就break:表示終止了遍歷,找到了尾部到首部第一個不為 ' ' 的位置
		int p2=len-1;
		while(p2 >= 0){
			if (cVal[p2] == ' ') {
				p2 -= 1;
			}else{
				break;
			}
		}
		
		String subStr=strArg.substring(p1,p2+1);
		return subStr;
	}
}

結果很明顯是實現了該功能,或許有可以進行優化的地方,歡迎留言與我討論交流!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved