需求说明:
数字字符串去除小数点后末尾多余的0
如果字符串为空返回0,非数字则返回原字符串**
方法一(使用BigDecimal):
/**
* 数字字符串去除小数点后末尾多余的0
* 如果字符串为空返回0,非数字则返回原字符串
* @param str
* @return
*/
public static String numberRemoveZero(String str){
String str2 = "";
if(str==null||"".equals(str)){
str="0";
}else{
try{
BigDecimal b = new BigDecimal(str);
//java1.7BigDecimal的stripTrailingZeros处理0.00没生效
if(b.compareTo(BigDecimal.ZERO)==0){
str2 = "0";
}else{
str2 = b.stripTrailingZeros().toPlainString();
}
}catch(Exception e){
Log.e("数字转化异常",str+e.toString());
str2 =str;
}
}
return str2;
}
方法二(使用Float.parseFloat):文章来源:https://www.toymoban.com/news/detail-515627.html
/**
* 数字字符串去除小数点后末尾多余的0
* 如果字符串为空返回0,非数字则返回原字符串
* @param str
* @return
*/
public static String numberRemoveZero2(String str){
String str2 = "";
if(str==null||"".equals(str)){
str="0";
}else{
try{
Float b = Float.parseFloat(str);
str2 = DecimalInputText(b+"");
}catch(Exception e){
str2 =str;
}
}
return str2;
}
引用方法静态方法DecimalInputText:文章来源地址https://www.toymoban.com/news/detail-515627.html
/**
* 去掉小数点多余的字符
*
* @param text
* @return
*/
public static String DecimalInputText(String text) {
if (text == null || text.equals("")) {
text = "0";
} else if (text.endsWith(".")) {
text = text.substring(0, text.length() - 1);
}else if (text.endsWith(".0")) {
text = text.substring(0, text.length() - 2);
}
return text;
}
到了这里,关于Java数字字符串去除小数点后末尾多余的0的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!