【发布时间】:2018-11-21 00:01:20
【问题描述】:
我有一个关于替换某些字符的问题。 我有一串x个字符,其中包含普通英文字母表中的所有字符。
String x = "exampleString"
我的问题是,因为我想做的是替换此字符串中的字符,所以我无法用户替换,因为这替换了以前替换的字符串,例如。
if(x.contains(e)){
x = x.replace("e","a")
}
这将替换上面字符串中的每个 E 字符。
我也在尝试使用:
x=x.replace("e","a").replace("a","b")
但这也将替换每个字符,即使是以前替换的字符。 我虽然这会起作用,因为字符串在 Java 中是不可变的,但它不是。
我还考虑使用计数器来查看字符串何时被替换并省略替换的字符串,但是我无法实现这一点。
任何人都可以提出解决方案吗?
问候 编程新手。
【问题讨论】:
-
除非您的映射是循环的,否则您可以反转它:
x=x.replace("a","b").replace("e","a")