Java:正则去掉小数点后多余0

来源:互联网 发布:手机淘宝可以秒杀吗 编辑:程序博客网 时间:2024/06/08 06:05

需求:已知字符串为一数字字符形式,多为float,double转换过来,将其后多余的0与.去掉.

Java代码  收藏代码
  1. package test;  
  2.   
  3. /** 
  4.  * 去掉多余的.与0 
  5.  * @author Hust 
  6.  * @Time 2011-11-7 
  7.  */  
  8. public class TestString {  
  9.   
  10.     public static void main(String[] args) {  
  11.         Float f = 1f;  
  12.         System.out.println(f.toString());//1.0  
  13.         System.out.println(subZeroAndDot("1"));;  // 转换后为1  
  14.         System.out.println(subZeroAndDot("10"));;  // 转换后为10  
  15.         System.out.println(subZeroAndDot("1.0"));;  // 转换后为1  
  16.         System.out.println(subZeroAndDot("1.010"));;  // 转换后为1.01   
  17.         System.out.println(subZeroAndDot("1.01"));;  // 转换后为1.01  
  18.     }  
  19.       
  20.     /** 
  21.      * 使用java正则表达式去掉多余的.与0 
  22.      * @param s 
  23.      * @return  
  24.      */  
  25.     public static String subZeroAndDot(String s){  
  26.         if(s.indexOf(".") > 0){  
  27.             s = s.replaceAll("0+?$""");//去掉多余的0  
  28.             s = s.replaceAll("[.]$""");//如最后一位是.则去掉  
  29.         }  
  30.         return s;  
  31.     }  
  32.       
  33. }  
 
0 0