一、 题目描述
请实现一个函数,把字符串中的每个空格替换成"%20"。例如,输入“We are happy.”,则输出“We%20are%20happy."。
二、问题分析
遍历字符串每一个字符,对每个字符与空格比较,如果相同,则replaceEd.append("%20");
如果不同,则字符不变,继续向下遍历。
三、算法实现
import java.util.Scanner;
/**
* @author jitwxs
* @date 2021年04月01日 20:31
*/
public class Main {
/**
* 用%20替换字符串中的空格
* @author jitwxs
* @date 2021/4/1 20:33
* @param stringBuffer
* @return java.lang.String
*/
static String repalce(StringBuffer stringBuffer){
StringBuffer replaceEd=new StringBuffer();
for(int i=0;i<stringBuffer.length();i++){
char b=stringBuffer.charAt(i);
if(String.valueOf(b).equals(" ")){
replaceEd.append("%20");
}else {
replaceEd.append(b);
}
}
System.out.println("替换空格后:"+replaceEd);
return replaceEd.toString();
}
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
System.out.println("输入:");
String string=scanner.nextLine();
StringBuffer stringBuffer=new StringBuffer(string);
repalce(stringBuffer);
}
}
测试:
测试用例
:hello world !
测试结果
:helle%20world%20!