if(count%2==0) {
s = new String(b,0,len);
}else{
len--;
}
抽取你代码中有问题的一部分
你上面那段代码是说,如果没有半个汉字存在,即count%2==0为true时,执行 s = new String(b,0,len);这里没错,这样判断很巧妙
但是你的else那部分代码,如果存在半个汉字,len自减,自减后呢?是不是应该生成个字符串啊?你就让编译器把截取长度减1,没有让编译器照这个长度去重新截取一个字符串-。-这能正确的话,只能说jvm太智能了
else部分的代码加改成下面那样试试?
else{
len--;
s = new String(b,0,len);
}
或许这样可以-。-我没运行过 |