我正在与一个应用程序Android Studio合作-mrate
是1公里距离的速率,replacetext
是两点之间的距离,并且在距离值具有十进制值(10.5)则系统出现错误
String mykm =dbDistance.getText().toString();
String mrate = dbRate.getText().toString();
System.out.println(mrate);
String replacetext;
replacetext = mykm.replace(" km", "");
System.out.println(replacetext);
//convert value into int
int x=Integer.parseInt(mrate);
int y=Integer.parseInt(replacetext);
//sum these two numbers
int z=x+y;
System.out.println(z);
答案 0 :(得分:1)
//convert value into int
int x=Integer.parseInt(mrate);
int y=Integer.parseInt(replacetext);
如果您有十进制值,请使用Double
或Float
代替Integer
答案 1 :(得分:0)
您还可以使用BigDecimal对象进行轻松转换和算术
BigDecimal decimal1 = new BigDecimal("1.024");
BigDecimal decimal2 = new BigDecimal("52.232");
BigDecimal decimal3 = decimal1.add(decimal2);
BigDecimal decimal4 = decimal3.multiply(decimal1);
String newValue = decimal4.toString();
BigDecimal的功能非常强大,尤其是当您需要精确到小数位或大数的精度时