添加双数据类型值
本文关键字:数据类型 添加 | 更新日期: 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允许您指定一个预定义或自定义的格式字符串,该字符串控制如何将值转换为字符串