Java String.replace()方法"无效"的原因及解决方式

首先我们来看个例子

public class Demo1 {
  public static void main(String[] args) {
    String aa="abcd";
    aa.replace("a","f");
    System.out.println("输出结果是"+aa);
  }
}

运行结果是什么呢?我们先看看这个方法的api

返回一个新的字符串,用newChar替换此字符串中出现的所有oldChar

所以这里的结果为:输出结果是abcd

而不是fbcd,要想替换则为下面代码

public class Demo1 {
  public static void main(String[] args) {
    String aa="abcd";
    String replaceStr = aa.replace("a", "f");
    System.out.println("输出结果是"+replaceStr);
  }
}

补充知识:Java String字符串替换replace和replaceAll不生效

使用java String类型自带replace和replaceAll方法会出现不生效的问题,主要是因为写法的问题

String类的replace方法是带有返回值的,并不是修改String对象本身

举例

public static void main(String[] args){
   String str = "aaa";
   String ret = str.replace("aa","b");
   System.out.println(str);
   System.out.println(ret);
}
aaa
ba

以上这篇Java String.replace()方法"无效"的原因及解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。