JavaSE————String类功能扩展

//String类扩展功能实现
public class Strings{
public static void main(String[] args){
	   // System.out.println(repeat('a',0));
	   // System.out.println(repeat('a',-4));
	   // System.out.println(repeat('a',6));
	  // System.out.println( fillBefore("java is best",'!',20));
	  // System.out.println( fillBefore("sd",'!',3));
	//System.out.println(removeAll("aa-bb-cc-dd", "-"));
	System.out.println(reverse("abcd"));
}
    
     /**
     * 重复某个字符
     * 
     * 例如: 
     * 'a' 5   => "aaaaa"  
     * 'a' -1  => ""
     * 
     * @param c     被重复的字符
     * @param count 重复的数目,如果小于等于0则返回""
     * @return 重复字符字符串
     */
    public static String repeat(char c, int count) {
	
	   if(count>0){
   char[] chars=new char[count];
		   for(int i=0;i<count;i++){
		  chars[i]=c;
		   }
		   return new String(chars);
	   }
	   else{
		   return "";
	   }
	  
       
	
	
	}
    
    
    
     /**
     * 将已有字符串填充为规定长度,如果已有字符串超过这个长度则返回这个字符串
     * 字符填充于字符串前
     *
     * 例如: 
     * "abc" 'A' 5  => "AAabc"
     * "abc" 'A' 3  => "abc"
     *
     * @param str        被填充的字符串
     * @param filledChar 填充的字符
     * @param len        填充长度
     * @return 填充后的字符串
     */
    public static String fillBefore(String str, char filledChar, int len) {
      if(str!=null){
	int strlength=str.length();
		if(strlength<len){		 
		char[] chars=new char[len-strlength];
		for(int i=0;i<len-strlength;i++){
			 chars[i]=filledChar;
		 }
		 return new String(chars)+str;
		}
		else{
		 return str;
		}
	 }
	 else{
		 if(len!=0){			 
		 char[] chars=new char[len];
		 for(int i=0;i<len;i++){
			 chars[i]=filledChar;
		 }
		 return new String(chars);
		 }
		 return "";
	 }
     
    }
    
    /**
     * 将已有字符串填充为规定长度,如果已有字符串超过这个长度则返回这个字符串<br>
     * 字符填充于字符串后
     * 例如: 
     * "abc" 'A' 5  => "abcAA"
     * "abc" 'A' 3  => "abc"
     *
     * @param str        被填充的字符串
     * @param filledChar 填充的字符
     * @param len        填充长度
     * @return 填充后的字符串
     */
    public static String fillAfter(String str, char filledChar, int len) {
     if(str!=null){
	int strlength=str.length();
		if(strlength<len){		 
		char[] chars=new char[len-strlength];
		for(int i=0;i<len-strlength;i++){
			 chars[i]=filledChar;
		 }
		 return str+new String(chars);
		}
		else{
		 return str;
		}
	 }
	 else{
		 if(len!=0){			 
		 char[] chars=new char[len];
		 for(int i=0;i<len;i++){
			 chars[i]=filledChar;
		 }
		 return new String(chars);
		 }
		 return "";
	 }
        
    }

    /**
     * 移除字符串中所有给定字符串
     * 例:removeAll("aa-bb-cc-dd", "-") => aabbccdd
     *
     * @param str         字符串
     * @param strToRemove 被移除的字符串
     * @return 移除后的字符串
     */
    public static String removeAll(CharSequence str, CharSequence strToRemove) {
    if(str!=null&&strToRemove!=null){
		String sstr=str.toString();
		String sstrToRemove=strToRemove.toString();
		String[] sbStrs=sstr.split(sstrToRemove);
		String strings="";
		for(int i=0;i<sbStrs.length;i++){
			strings+=sbStrs[i];
		}
		return strings;
	}
	return "";
    }
    
    /**
     * 反转字符串
     * 例如:abcd => dcba
     *
     * @param str 被反转的字符串
     * @return 反转后的字符串
     */
    public static String reverse(String str) {
		if(str!=null){		
	char[] chars=str.toCharArray();
	for(int i=0;i<chars.length/2;i++){
		char temp=chars[i];
		chars[i]=chars[chars.length-1-i];
		chars[chars.length-1-i]=temp;
	}
	String str1=new String(chars);
	return str1;
		}
		return "";
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值