public class NewClass {
    public static void main(String[] args) {
            String piece = "10*2";
            String ans = "20";
            String problm = "10*2*9";

            System.out.println(piece);
            System.out.println(ans);

            problm.replaceAll(piece, ans);

            System.out.println(problm);
    }
}


这是我的代码,当我打印problm时,它会打印:10*2*9
我要打印20*9,请告诉我我做错了什么

最佳答案

首先,使用replace代替replaceAllreplaceAll使用正则表达式,您可能不希望这样。

其次,Java中的字符串是不可变的,这意味着它们的值永远不能更改。您需要将problm.replaceAll(piece, ans);的值分配回problm

problm = problm.replace(piece, ans);

10-06 06:00