Java 去除小数点后面多余的0

问题描述:业务中,从excel里读取销售价格,取出来的数据并不是整数,而是数字后面带有小数点和零。(销售价为123,但是实际上取出来是123.0)
问题解决:利用正则表达式解决

```
import java.math.BigDecimal;
import java.text.NumberFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Test {

	public static void main(String[] args) throws ParseException {
		BigDecimal b1 = new BigDecimal("1.345550000");
		BigDecimal b2 = new BigDecimal("123.0");
		System.out.println(b1);
		System.out.println(b2);	                                            
                System.out.println(rvZeroAndDot(b1.toString()));         
                System.out.println(rvZeroAndDot(b2.toString()));
		}
	
        public static String rvZeroAndDot(String s){  
    	       if (s.isEmpty()) {
		  return null;
		     }
               if(s.indexOf(".") > 0){  
               s = s.replaceAll("0+?$", "");//去掉多余的0  
               s = s.replaceAll("[.]$", "");//如最后一位是.则去掉  
               }  
              return s;  
         }  
	
	

}


```

你可能感兴趣的:(Java 去除小数点后面多余的0)