zoukankan      html  css  js  c++  java
  • java中int相除取小数点后两位或限定位数

    java 两个整数相除保留两位小数:

     http://blog.sina.com.cn/s/blog_624d755d0101cvuq.html

    java中,当两个整数相除时,由于小数点以后的数字会被截断,运算结果将为整数,此时若希望得到运算结果为浮点数,必须将两整数其一或是两者都强制转换为浮点数。
    例如:
    (float)a/b // 将整数其中一个强制转换为浮点数,再与另一个整数相除
    a/(float)b
    (float)a/(float)b // 将两个整数同时强制转换为浮点数后再相除

    Java代码  

    1. float num= (float)2/3;   
    2. DecimalFormat df = new DecimalFormat("0.00");//格式化小数   
    3. String s = df.format(num);//返回的是String类型 

    将小数转化为百分数:

    import java.text.NumberFormat;

    public class TeachYou {

    public static void main(String[] args) {

       //这里的数后面加“D”是表明它是Double类型,否则相除的话取整,无法正常使用
       double percent = 50.5D / 150D;

       //输出一下,确认你的小数无误
       System.out.println("小数:" + percent);

       //获取格式化对象
       NumberFormat nt = NumberFormat.getPercentInstance();

       //设置百分数精确度2即保留两位小数
       nt.setMinimumFractionDigits(2);

       //最后格式化并输出
       System.out.println("百分数:" + nt.format(percent));

    }
    }

    取限定位数

    // 创建一个数值格式化对象 
      NumberFormat nt = NumberFormat.getInstance(); 
      // 设置精确到小数点后2位 
      nt.setMinimumFractionDigits(2); 
      nt.setMaximumFractionDigits(2); 
    nt.format((float) a / (float) count);

  • 相关阅读:
    title()、upper()、lower()的用法
    Oracle用户无法访问ASM磁盘组问题
    Oracle-RAC监听服务进程关闭失败问题分析处理
    SHELL-字符串操作和变量替换
    Linux-按文件大小排序
    MySQL-重置root密码问题
    Oracle-表空间添加数据文件扩容出错解决措施
    Logstash-使用
    Logstash-工作原理
    ELK+filebeat+kafka搭建Oracle数据库日志平台
  • 原文地址:https://www.cnblogs.com/wym789/p/8023335.html
Copyright © 2011-2022 走看看