java求小于0的小数_java里如何在输出浮点数小数部分为0时自动将小数点和小数部分隐藏...

展开全部

如果浮点数据比较小,可采用(int)强制转换方式,进行取整数后的两数比较,62616964757a686964616fe59b9ee7ad9431333337613763确定是否有小数位,进行相应的格式输出。但,浮点数据范围远超过int所能承受的范围,所以,这种方法局限性很大,所以,采用字符串检查处理方法可以满足所有浮点数的情况,代码如下,供参考:public class test {

static String fmt_prt_double( Double d ) //自定义格式化输出函数

{

String s=String.format("%f", d);//将浮点数转为字符串

int i;

for( i=s.length()-1;i>=0;i-- ) //从串尾向前检查,遇到非0数据结束循环

{

if ( s.charAt(i)=='.' ) //遇到小数点结束,说明是个整数

break;

if ( s.charAt(i) != '0' ) //遇到小数中有非0值,结束

{

i++;

break;

}

}

return s.substring(0,i); //返回处理后的子串

}

//以下进行相应的数据验证

public static void main(String[] args) {

Double dd = 1234567890123.00;

System.out.println( fmt_prt_double(dd) );

dd = 1234567890123.01;

System.out.println( fmt_prt_double(dd) );

dd = 0.0;

System.out.println( fmt_prt_double(dd) );

dd = 0.00023;

System.out.println( fmt_prt_double(dd) );

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值