package stringTest; public class StringDemo4 { public static void main(String[] args) { String str = " abcdefg "; System.out.println("原始的字符串:"); System.out.println("str = (" + str + ")"); StringDemo4 sd4 = new StringDemo4(); System.out.println("去掉空格后的字符串:"); sd4.sop(sd4.myTrim(str)); str.trim(); } String myTrim(String str) { int start = 0; int end = str.length()-1; /** *注意:start <= end和str.charAt(start) == ' '两个条件的顺序不可以调换, *否则,当整个字符转都是空格的时候,start值会等于str.length(),大于最大的角标str.length()-1 *条件str.charAt(start) == ' '会造成角标越界异常StringIndexOutOfBoundsException, *&&是执行第一个条件为false之后,第二个条件就不会执行了 */ while(start <= end && str.charAt(start) == ' ') { start++; } while(end >= start && str.charAt(end) == ' '){ end--; } return str.substring(start, end+1); } //打印字符串 void sop(String str){ System.out.println("str = (" + str + ")"); } }
时间: 2024-10-29 08:40:41