Java中String的trim()函数
简言之,Java中的trim()函数去除了字符串前后两端的所有包括空格、换行、回车等在ASCII码表中排行小于等于空格(空格在ASCII码表中序号是32)的字符。
查看String类中的源码就知道了:
public String trim() {
int len = value.length;
int st = 0;
char[] val = value; /* avoid getfield opcode */
while ((st < len) && (val[st] <= ' ')) {
st++;
}
while ((st < len) && (val[len - 1] <= ' ')) {
len--;
}
return ((st > 0) || (len < value.length)) ? substring(st, len) : this;
}
测试验证
public class Test {
public static void main(String[] args) {
String str = "\n\f\t12 3 \t";
System.out.println("str value:"+str.trim()+"."); // 结果:str value:12 3.
}
}
附ASCII码表中部分特殊字符的数字序号:
chr(9) tab空格 chr(10) 换行 chr(13) 回车
chr(32) 空格符 chr(34) 双引号 chr(39) 单引号
chr(33) ! chr(34) " chr(35) #
chr(36) $ chr(37) % chr(38) &
chr(39) ' chr(40) ( chr(41) )
chr(42) * chr(43) + chr(44) ,
chr(45) - chr(46) . chr(47) /
chr(48) 0 chr(59) ; chr(60) <
chr(61) = chr(62) > chr(63) ?
chr(64) @ chr(91) [ chr(92) \
chr(93) ] chr(94) ^ chr(95) _
chr(96) `