java中如何真正的实现替换最后⼀个字符(包括有相同字符的
情况)
⼀.之前在写代码的时候有⼀个替换最后⼀个字符的需要,开始使⽤了如下⽅法:
place(str.charAt(str.length-1)+"","新字符");
例如:
String str="abcdefg"
place(str.charAt(str.length-1)+"","a");
结果输出为:str="abcdefa":
但是发现当字符串中有重复相同的字符时,这个时候是会将所有与最后⼀个字符相同的字符都替换:
例如:
String str="abgdgfg"
place(str.charAt(str.length-1)+"","a");
结果输出为:str="abadafa":
原因是replace("参数⼀","参数⼆")⽅法中的两个参数分别为:
参数⼀:oldchar,将被替换的字符
java replace方法参数⼆:newchar,替换的字符
str.charAt(str.length-1)+""这个参数是到了最后⼀字符“是什么”,然后把和这个字符相同的字符都替换了
⼆.使⽤了下⾯的⽅法仅仅替换最后⼀个字符:
String str="abgdgfg"
String newChar = "a";
if (StringUtils.isNotBlank(newChar)) {
StringBuilder sb = new StringBuilder(str);
//replace(参数1,参数2,参数3),参数1为要替换的开始位置,参数2为要替换的结束位置,参数3为替换内容
String
}
结果输出为:str="abgdgf a":

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。