You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin中调用Char参数的replace()方法替换字符不生效

问题根因

Kotlin 的字符串是不可变类型,String类提供的replace()及其他所有字符串操作方法,都不会修改调用方法的原字符串对象,只会将替换完成的结果作为新的字符串返回。
你当前的代码只调用了replace()方法,但没有接收方法返回的新字符串,原result变量始终指向最初赋值的"Hi!"实例,打印自然不会出现预期的修改结果。

修复方式

将replace()返回的结果重新赋值给变量即可:

var result = "Hi!"
result = result.replace('i','z')
// 此时打印result会得到正确结果 Hz!

如果不需要保留原字符串,也可以直接在变量声明时接收处理结果,哪怕用val声明不可变变量也可以正常使用:

val result = "Hi!".replace('i','z')

内容的提问来源于stack exchange,提问作者Bob Redity

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 16:18:21