小编典典

提示java.lang.String.replace问题?

java

我想替换为“。” 我要写入文件的字符串/双精度字符中的“,”。

使用以下Java代码

double myDouble = myObject.getDoubleMethod(); // returns 38.1882352941176
System.out.println(myDouble);

String myDoubleString = "" + myDouble;
System.out.println(myDoubleString);

myDoubleString.replace(".", ",");
System.out.println(myDoubleString);

myDoubleString.replace('.', ',');
System.out.println(myDoubleString);

我得到以下输出

38.1882352941176
38.1882352941176
38.1882352941176
38.1882352941176

为什么不代替做应该做的事情?我希望最后两行包含一个“,”。

我是否需要做/使用其他东西?有什么建议吗?


阅读 213

收藏
2020-09-15

共1个答案

小编典典

您需要将新值分配回变量。

double myDouble = myObject.getDoubleMethod(); // returns 38.1882352941176
System.out.println(myDouble);

String myDoubleString = "" + myDouble;
System.out.println(myDoubleString);

myDoubleString = myDoubleString.replace(".", ",");
System.out.println(myDoubleString);

myDoubleString = myDoubleString.replace('.', ',');
System.out.println(myDoubleString);
2020-09-15