Java怎么使用replace替换字符串中的某一位的字符

比如。String a=“4+6547”;
想用replace替换第二位的+,成为空格“ ”。应该怎么写?
是a.replace(a,1," "),是这么写么?但是我这么写报错了。

实现思路:先获取到特定位置的字符,之后直接替换即可
public class strRepalce {
public static void main(String[]args){
//要替换的一个字符串
String str="abcmdf";
//获取指定字符位置 例如取 替换c字符
int i=str.indexOf("c");
//str.charAt(i) 取出指定字符(char类型 无法直接转string) String.valueOf 转换成string类型
String str2=String.valueOf(str.charAt(i));
//X为指定替换字符
str=str.replaceFirst(str2,"X");

System.out.println(str);
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-10-04
String a="4+6547";
// 第一位
int i = 1;
a = a.replaceFirst(a.substring(i, i+1), " ");
System.out.println(a);

追问

比如一个未知字符串。我想把他的第n位替换成“ ”怎么写?

追答

你只需要把我上面的i的值赋值成你的n就可以了

追问

方便加一下QQ么。 稍微问一下你的函数的功能、、非常感谢。 我把我的QQ私信发给你

追答

好的

本回答被提问者和网友采纳
第2个回答  2014-10-04
a.replaceFirst("+"," ");追问

如果字符串是“4+34+3453+”呢。。。 然后我第一次要替换第一个加号。 第二次要替换第二个。。。以此类推。

追答

a.replace("+"," ");

第3个回答  2018-02-28
String b = a.replace('+',' ');
System.out.printlen(b);
相似回答