首页 > Java > java教程 > 为什么我的 Java 字符串 `replace()` 方法似乎不起作用?

为什么我的 Java 字符串 `replace()` 方法似乎不起作用?

Patricia Arquette
发布: 2024-11-19 21:59:03
原创
779 人浏览过

Why Does My Java String `replace()` Method Not Seem to Work?

Java 字符串替换方法失败 [重复]

某些 Java 实现报告了 Replace() 方法无法充分替换 a 中的特定字符串。给定字符串。这种异常的发生是由于 String 对象的不可变性质。

问题代码分析:

在提供的代码片段中:



pre>字符串分隔符 = "";
字符串 html = "
用户名
AND
密码
";
地图; mp = new HashMap();
mp.put("USERNAME", "用户 A");

mp.put("PASSWORD", "B");

for ( Entry Entry : mp.entrySet()) { html.replace(delimiter entry.getKey() delimiter, entry.getValue());}

问题说明:

Java 中的 Replace() 方法不会改变原始 String 对象。相反,它返回一个应用了替换的新字符串。这就是争论的焦点:原始 html 变量继续保存原始 String 值。

解决方案:

要纠正此问题,应将代码修改为显式使用replace()操作的结果重新分配html变量:

登录后复制
html = html.replace(delimiter entry.getKey() delimiter, entry.getValue());

结论:在使用像 Replace() 这样的方法时,理解 String 对象的不变性至关重要。将返回的 String 对象分配给原始变量可确保预期的替换生效。

以上是为什么我的 Java 字符串 `replace()` 方法似乎不起作用?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板