在String类中替换方法,给出不同的输出

时间:2016-07-17 07:21:32

标签: java

在核心java API中,我研究了String类中的方法replace(char oldChar,char newChar),它说它会在每次出现时用字符串中的oldChar替换newChar,购买此解释输出下面给出的这个程序应该是

  

A B D C

但真正的输出是

  

A B C C

任何人都可以解释为什么会发生这种情况。

class A{
    public static void main(String[] args){
        String ta = "A ";
        ta = ta.concat("B ");
        String tb = "C ";
        ta = ta.concat(tb);
        ta.replace('C','D');
        ta = ta.concat(tb);
        System.out.println(ta);
    }
}

1 个答案:

答案 0 :(得分:0)

 ta.replace('C','D');

此行不会更改ta。它返回一个新字符串并进行了更改。你想要

ta = ta.replace('C','D');