黑马程序员技术交流社区

标题: 模拟trim()函数,并去掉一个指定字符串中的指定多个字符 [打印本页]

作者: WaterTheGreat    时间: 2015-12-25 12:58
标题: 模拟trim()函数,并去掉一个指定字符串中的指定多个字符
/*
        1、模拟trim()函数
        2、去掉一个指定字符串中的指定多个字符
*/

class TrimDemo
{
        public static void main(String[] args)
        {
                String s1="             ";
                String s2="adf  a  sdf    ";
                String s3="    ad  fasdf   ";
                String s4="adfa sd f";
                System.out.println(Trim.fun(s1));
                System.out.println(Trim.fun(s2));
                System.out.println(Trim.fun(s3));
                System.out.println(Trim.fun(s4));
                System.out.println("--------------");
                char [] ch ={' ','a','d'};
                System.out.println(Trim.qu(s4,ch)); //去掉所有的空格和a和d
        }
}

class Trim
{
        public static final String fun(String s)//模拟Trim方法
        {
                int start=-1,end=-1;
                for (int i=0;i<s.length() ;i++ )
                {
                        if(s.charAt(i)!=' ' &&start==-1)
                        {  
                                start=i;
                        }
                        if(s.charAt(s.length()-1-i)!=' ' && end==-1)
                        {
                                end=s.length()-i;
                        }
                }
                if(start==-1)
                        return "";
                return s.substring(start,end);
        }
        public static final String qu(String s,char[] c)//去掉所有的指定字符
        {        String str="";
            boolean flag;
                for (int i=0;i<s.length();i++ )
                {
                        flag=true;
                        for(int j=0;j<c.length;j++)//令第i索引个s的字符与所有的c中的字符比较,如果有相同的,则置换

为false
                        {
                                if(s.charAt(i)==c[j] )
                                {
                                        flag=false;
                                        break;
                                }
                               
                        }               
                        if(flag==true)
                        {
                                str=str+s.charAt(i);                               
                        }
                       
                }
                return str;
        }

}




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