替换字符串中的空格

package suanfa;

public class replacespace {
	
	public static String replace(String s,String b){
//		char[] result=s.toCharArray();
		int addlenth=b.length()-1;
		int count=0;
		for(char m:s.toCharArray()){
			if((int)m==32){
				count++;
			}
		}
		char []outcome=new char[s.length()+addlenth*count];
		char[]resulta=s.toCharArray();
		char []temp=b.toCharArray();
		
		
		
		for(int j=s.length()-1;j>=0;j--){
			if((int)resulta[j]!=32)
			outcome[j+addlenth*count]=resulta[j];
			else
			{
				for(int k=temp.length-1;k>=0;k--){
					outcome[j+(addlenth*count)-(temp.length-1-k)]=temp[k];
					
					}
				count--;
			}
		}
		
		return String.valueOf(outcome);
	}
	public static void main(String[] args) {
		String a="My name is Ryan!!!!!";
		String b="%20";
		String c=replace(a,b);
		System.out.print(c);
	}

}

 在尝试本次试验的时候,发现一个问题,如果你新建一个数组比如说,int []a=new int [25],如果你有一个数组b是b={1,2,3,4,5,6,7},然后将a=b,那么a 的大小也变成了7;而在是25呢!测试代码如下:

int[]a=new int[25];
		int[]k={1,2,3,4,5,6,7};
		a=k;
		for(int m:a){
			System.out.println(m);
		}

 

你可能感兴趣的:(替换空格)