黑马程序员技术交流社区

标题: 如何去除一个字符串中的某个字符 [打印本页]

作者: 王乐乐    时间: 2014-8-3 23:01
标题: 如何去除一个字符串中的某个字符
有一个字符串:abaadcdb
要把所有的a去掉,怎么做?搜到了一些方法,但是感觉效率不怎么高。


作者: HPU--spring87    时间: 2014-8-3 23:10
替换,a,替换成空,就哦了。
作者: 晋一峰    时间: 2014-8-3 23:21
         String str="abaadcdb";//你的字符串
                String [] strs=str.split("a");//将不想要的字符过滤掉,生成字符串数组形式的
                String newstr="";
                for(int i=0;i<strs.length;i++)
                {
                       if(!strs[i].equals(""))
                        newstr+=strs[i];
               }
                     System.out.println(newstr);
作者: fantacyleo    时间: 2014-8-4 01:01
一句效率不高弄得我心里没底啊,要达到多高的效率啊?
  1. String s = "abac";
  2.             int len = s.length();
  3.             
  4.             StringBuilder sb = new StringBuilder(len / 2);
  5.             for (int i = 0; i < len; i++) {
  6.                     char c = s.charAt(i);
  7.                     if (c != 'a')
  8.                             sb.append(c);
  9.             }
  10.             s = sb.toString();
复制代码

作者: 张涛的狂怒    时间: 2014-8-4 02:29
  
public class Replace {
        public static void main(String args[]){
                String av="abxdbd";
                String av1=av.replace("a", "");
                System.out.println(av1);
        }
}

作者: 张涛的狂怒    时间: 2014-8-4 02:30
public static void main(String[]args){
                String pp="01234567890123456789";
                StringBuffer sb=new StringBuffer("01234567890123456789");
                System.out.println(sb+"\n");
                for(int i=0;i<pp.length();i++){
                        for(int j=i+1;j<sb.length();j++){
                                if(pp.charAt(i)==sb.charAt(j)){
                                        // StringBuffer内存是随元素变化的,所有用String型的
                                        sb.deleteCharAt(j);
                                }
                        }
                }
                System.out.println(sb);
        }
}




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2