设计一种方法,将一个字符串中的所有空格替换成 %20 。你可以假设该字符串有足够的空间来加入新的字符,且你得到的是“真实的”字符长度。
你的程序还需要返回被替换后的字符串的长度。
对于字符串"Mr John Smith", 长度为 13
你的程序还需要返回被替换后的字符串的长度。
对于字符串"Mr John Smith", 长度为 13
替换空格之后,参数中的字符串需要变为"Mr%20John%20Smith",并且把新长度 17 作为结果返回。
import java.util.Scanner;
/**
* 设计一种方法,将一个字符串中的所有空格替换成 %20 。你可以假设该字符串有足够的空间来加入新的字符,且你得到的是“真实的”字符长度。
你的程序还需要返回被替换后的字符串的长度。
对于字符串"Mr John Smith", 长度为 13
替换空格之后,参数中的字符串需要变为"Mr%20John%20Smith",并且把新长度 17 作为结果返回。
*
* @author Dell
*
*/
public class Test212 {
public static int replaceBlank(char[] string, int length)
{
StringBuilder sb=new StringBuilder();
for(int i=0;i<length;i++)
{
if(string[i]!=' ')
{
sb.append(string[i]);
}
else
{
sb.append("%20");
}
}
char[] newstring=sb.toString().toCharArray();
for(int i=0;i<newstring.length;i++)
{
string[i]=newstring[i];
}
return sb.toString().length();
}
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();
char[] string=s.toCharArray();
System.out.println(replaceBlank(string,s.length()));
}
}