我知道没有简单的方法可以做到这一点。假设我有以下字符串 -
"abcdefgh"
我希望通过用'x'替换第三个字符'c'来获取字符串。
很长的路要走这个 -
s1 = substring before third character = "ab" in this case
s2 = new character = "x" in this case
s3 = substring after third character = "defgh" in this case
finalString = s1 + s2 + s3
有更简单的方法吗?应该有一些像
这样的功能public String replace(int pos, char replacement)
答案 0 :(得分:5)
StringBuilder sb = new StringBuilder("abcdefgh");
sb.replace(2, 3, "x");
String output = sb.toString();
答案 1 :(得分:3)
您可以将String
转换为char[]
,然后替换该字符。然后将char[]
转换回String
。
String s = "asdf";
char[] arr = s.toCharArray();
arr[0] = 'b';
s = new String(arr);
答案 2 :(得分:2)
没有。没有简单的方法来连接各个部分。
答案 3 :(得分:1)
尝试使用StringBuilder而不是StringBuilder Java Page
答案 4 :(得分:1)
因为每个String基本上只是一个char [],你可以抓住它并以这种方式操纵各个字符。
答案 5 :(得分:-1)
怎么样:
String crap = "crap";
String replaced = crap.replace(crap.charAt(index), newchar);
但这会替换该角色的所有实例
答案 6 :(得分:-1)
尝试String.replace(Char oldChar, Char newChar)
方法或使用StringBuilder
答案 7 :(得分:-2)
String yourString = "abcdef"
String newString = yourString.replaceAll("c" , "x");
System.out.println("This is the replaced String: " + newString);
这是被替换的字符串:abxdef