想要用十进制值替换字符串值。假设“4”是要替换“0.5”而不是4的字符串值。 我收到一个错误:
at sun.misc.FloatingDecimal.parseFloat(Unknown Source)
at java.lang.Float.parseFloat(Unknown Source)
以下是我的尝试:
float rename = Float.parseFloat(activ.code1);
String str = Float.toString(rename);
str.replaceAll("4", "0.5");
activ.code1=str;
我的输入为“4”,我希望输出为“0.5”。但是,当我只给予替换时:
String.replace("4", "0.5");
它打印0.1而不是0.5
答案 0 :(得分:1)
String
是不可变的,因此您需要在替换" 4"之后分配值。用" 0.5"像:
str = str.replace("4", "0.5");//use replace instead of replaceAll
此调用将替换4到0.5的所有出现。如果有多次出现4那么它将替换所有出现的事件。
e.g。
输入:4444
输出:0.50.50.50.5