我有一些数据需要存到数据库里,因为需要根据这个数值的大小进行查询,所以不能存varchar格式,我就存了float格式,小数点后面最多两位小数。现在我想取出来的数据如果是小数的就正常显示,没有小数位的就只显示整数位,肯请诸位指点迷津。

解决方案 »

  1.   

    自己写一个函数,把小数点后的取下来用正则表达式匹配一下,如果小数点后没有大于0的数字,就把小数点前面的数字取下来显示。
      public static void main(String[] arguments){
        float f = 00.1000f;
        String str = String.valueOf(f);
        int i = str.indexOf(".");
        str = str.substring(i+1);
        boolean b = reg(str);
        System.out.println(b);
        }
      static boolean reg(String str) {
        String regexp = "([1,9])";
        Pattern p = Pattern.compile(regexp);
        Matcher m = p.matcher(str); 
        boolean b = m.matches();
        return b;
      }
      

  2.   


    float f = 1.000f;
    String str = String.valueOf(f);
    int i = str.indexOf(".");
    if(i!=-1){
      //输出小数
    }
    else{
      //输出整数
    }