问题描述
packagemyTest.string;//去掉字符串两端的空格;publicclasstest1_subString{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubStringstr="abcdefj";trim(str);}publicstaticvoidtrim(Stringstr){tintstartIndex=0;intendIndex=str.length()-1;while(startIndex<endIndex&&str.charAt(startIndex)==''){startIndex++;}//当从0界标起截取字符串的字符为空,则界标加一;直到截取的字符不为空循环就停止;while(startIndex<endIndex&&str.charAt(endIndex)==''){endIndex--;}//当从最后一个字符的index界标起截取字符串的字符为空,则界标减一;直到截取的字符不为空循环就停止;Strings=str.substring(startIndex,endIndex);System.out.println(s);}}
解决方案
解决方案二:
代码应该放进代码块里贴出来,这样看得舒服点
解决方案三:
兄弟写的挺好的,还不如用repacle替换掉得了,还来得快
解决方案四:
属于重复的发明轮子String类的trim实现的就已经很好了publicStringtrim(){intlen=value.length;intst=0;char[]val=value;/*avoidgetfieldopcode*/while((st<len)&&(val[st]<='')){st++;}while((st<len)&&(val[len-1]<='')){len--;}return((st>0)||(len<value.length))?substring(st,len):this;}
解决方案五:
参考string的源码/
解决方案六:
解决方案七:
.trim()不就完了吗,哪来这么多事
解决方案八:
前人的树已经栽好了,你需要花很多时间进行这样的所谓优化,至少在我看来不值
解决方案九:
可以用正则表达式的吧Stringstr=str.replaceAll("+(\w+)+","$1");
解决方案十:
String.trim()就是去掉字符串的前后空格的啊,为什么要这样写呢?
解决方案十一:
楼主可能是想自己实现一下String的trim()功能。很强大!
解决方案十二:
应该差不多了Stringstr="神马情况";System.out.print(str.replace("",""));
结果:神马
解决方案十三:
最简单的办法就是用现有的