添加双数据类型值

本文关键字:数据类型 添加 | 更新日期: 2023-09-27 17:59:09

作为C#的新手。在网络编程中,我一直在尝试进行一些算术计算,但当我想获得下面的代码中所示的零小数整数时,我却一直在操作替身

        double a, b;
        a = 2.0;
        b = 2.0;
        double z = a + b;
        Console.WriteLine(z);

输出:4,而不是4.0有什么决议吗?

添加双数据类型值

如果双精度不是整数(即小数点右侧有数字),我假设您不希望输出的值四舍五入,在这种情况下,z的所有值都不适合格式化为"N1"。

if ((z % 1) == 0)
    Console.WriteLine(z.ToString("N1")); // should output "4.0"
else
    Console.WriteLine(z); // should output "4.123456789"

以下是控制十进制格式的另一种方法:

        var a = 2.0;
        var b = 2.0;
        double z = a + b;
        Console.WriteLine(string.Format("{0:0.00}", z));
        Console.WriteLine(String.Format("{0:0.0000}", z));

来自上方的输出:

4.00

4.0000

还有一个例子:

        var a = 2.0;
        var b = 2.2;
        double z = a + b;
        Console.WriteLine(string.Format("{0:0.0}", z));
        Console.WriteLine(String.Format("{0:0.000}", z));

来自上方的输出:

4.2

4.200

使用字符串格式执行此操作:

Console.WriteLine(z.ToString("N1"));

N是格式类型(数字),1表示小数点后1位。

没有问题。数字是4。不过,您写入控制台的字符串是使用隐式格式生成的。要改变这一点,只需定义您想要的格式,例如:

Console.WriteLine("This is my number {0:N1"},z);

Console.WriteLine(@"This is my number {z:N1}");

Console.WriteLine(z.ToString("N1");

中的"格式化类型"部分。MSDN中的NET Framework解释了如何将类型格式化为字符串。NT.控制台之类的方法。WriteLine和String。ToFormat允许您指定一个预定义或自定义的格式字符串,该字符串控制如何将值转换为字符串