首页 > 其他分享 >decimal float double小数位比较

decimal float double小数位比较

时间:2023-08-15 13:56:34浏览次数:32  
标签:Console double decimal float WriteLine 小数

decimal float double小数位比较

语法---2023-7-27 decimal 最多可以保留28位小数 float 最多可以保留6位小数 double 最多可以保留14位小数
 /// <summary>
        /// 测试语法
        /// </summary>
        public static void TestProgrammer()
        {
            decimal a = 4.9998888888099928883838838367M;//decimal 最多可以保留28位小数
            Console.WriteLine($"decimal 最多可以保留28位小数---4.9998888888099928883838838367M------{a}");

            var x = 4.9998;
            Console.WriteLine($"a.ToString(00.000000)---0 表示占位符,有没有都会占位置,有替换,没有显示0------{x.ToString("0.000000")}");//0 表示占位符,有没有都会占位置,有替换,没有显示0
            Console.WriteLine($"a.ToString(##.####)---# 表示占位符,根据实际占位置,有替换,没有显示0------{x.ToString("##.######")}");//# 表示占位符,根据实际占位置,有替换,没有显示0

            float b = 4.666677f;//float 最多可以保留6位小数
            Console.WriteLine($"float 最多可以保留6位小数--4.666677f------{b}");

            double c = 4.111111111111116d;//double 最多可以保留14位小数
            Console.WriteLine($"double 最多可以保留14位小数--4.111111111111116d------{c}");
        }

 

标签:Console,double,decimal,float,WriteLine,小数
From: https://www.cnblogs.com/1175429393wljblog/p/17631106.html

相关文章

  • Java BigDecimal 分析
    1.使用理由:Double类和Float类可以对16位有效数字的数进行精确运算,但对于超过16位有效数字的数,会丢失精度。所以使用BigDecimal类来精确计算超过16位有效数字的数。2.引入包:importjava.math.BigDecimal;3.构造方法:BigDecimal(E):创建一个具有参数所指定类型的对象使用样......
  • SpringBoot BigDecimal精度丢失
    jackjson自动丢弃了小数位最末尾的0privateBigDecimalprice;price=12.10;返回自动转为了12.1解决方案1:返回字段都用字符串2:BigDecimal序列化自定义处理packagecom.lenovo.lps.cost.integrator.config;importcom.fasterxml.jackson.core.JsonGenerat......
  • 条件竞争漏洞Double Fetch
    前言DoubleFetch(双取)是一种条件竞争的漏洞,相关的论文发表在USENIX,论文链接:https://www.usenix.org/system/files/conference/usenixsecurity17/sec17-wang.pdfDoubleFetchDoubleFetch是内核的一种漏洞类型,发生在内核从用户空间中拷贝数据时,两次访问了相同一块内存。如下图......
  • BigDecimal 详解
    《阿里巴巴Java开发手册》中提到:“为了避免精度丢失,可以使用BigDecimal来进行浮点数的运算”。浮点数的运算竟然还会有精度丢失的风险吗?确实会!示例代码:floata=2.0f-1.9f;floatb=1.8f-1.7f;System.out.println(a);//0.100000024System.out.println(b);//0.0......
  • c#怎么样让double或者float保留2位小数
      我们都知道float的位数比较多但是转成Tostring显示时还是会截断并且四舍五入。如果我们要进行精密的计算时比如计算0.9999999如果被截断了结果就会变成1。这与我们的预期结果不相符。那么我们怎么才能随心所欲的设置小数位数。可以参考下面的例子。我们以设置小数位......
  • BigDecimal的默认值
    在Java中,BigDecimal类型的默认值为0,即表示数值为零的BigDecimal对象。当你创建一个新的BigDecimal对象时,如果没有显式指定初始值,那么它将被默认初始化为零。例如:importjava.math.BigDecimal;publicclassMain{publicstaticvoidmain(String[]args){BigDecim......
  • bigdecimal保留两位小数
    bigdecimal保留两位小数1publicclasstest1_format{2publicstaticvoidmain(String[]args){3BigDecimaldecimal=newBigDecimal("1.12345");4System.out.println(decimal);5BigDecimalsetScale=decimal.setScale(4,BigDecimal.ROUND_HALF_DOWN)......
  • golang之浮点数处理库decimal
    decimal库包是用来解决float类型对象之间运算不准确的问题的。所以,如果你想使用decimal库包,你必须先把float类型对象通过decimal.NewFromFloat()函数转成decimal.Decimal类型,然后再计算,最后还得再转成你所需要的类型。范例:packagemainimport"log"funcmain(){a:=......
  • BigDecimal判断整除/除尽
    整除:在除法中只有被除数、除数和商都是整数的情况下,才可以说是“整除”。除尽:在除法中只要除到某一位时没有余数,不管被除数、除数和商是整数还是小数,都可以说是“除尽”。BigDecimal判断是否能被整除/***判断被除数是否能被除数整除**@paramdividend被除数*@paramdivisor......
  • Golang 使用 JSON unmarshal 数字到 interface{} 数字变成 float64 类型
    最近在golang业务开发时,遇到一个坑。我们有个服务,会接收通用的interface对象,然后去给用户发消息。因此会涉及到把各个业务方传递过来的字符串,转成interface对象。但是因为我的字符串里有一个数字,比如下面demo里的{"number":1234567},而且数字是7位数,在经过json.Unmarshal后,被转成......