如何用java自己实现String类的trim()方法功能2016-08-18 csdn u013871100
/** * 仿写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;}}
结果很明显是实现了该功能,或许有可以进行优化的地方,欢迎留言与我讨论交流!