62,621
社区成员
发帖
与我相关
我的任务
分享
public String trim() {
int len = count;
int st = 0;
int off = offset; /* avoid getfield opcode */
char[] val = value; /* avoid getfield opcode */
while ((st < len) && (val[off + st] <= ' ')) {
st++;
}
while ((st < len) && (val[off + len - 1] <= ' ')) {
len--;
}
return ((st > 0) || (len < count)) ? substring(st, len) : this;
}
这是String的trim方法,如果String前后没有包含空格,会直接返回原String,否则会new出一个新的,
String aStr = "_One_";
String bStr = aStr;//bStr指向" One "了
bStr =aStr.trim();//由于aStr修改了,会返回一个新的String ,bStr指向的是新的内容是One,aStr没有改变内容,所以输出就是[ One ,One]