我有这样的方法:
Prefix GetPrefix(decimal value)
{
if(value > 11000000000000000000)
return Prefix.CosmicBig;
if(value > 1000000000000000)
return Prefix.ReallyBig;
if(value > 3000000000000)
return Prefix.Big;
if(value > 50000000)
return Prefix.Okay;
if(value > 750000)
return Prefix.MostlyNormal;
if(value > 750000)
return Prefix.SoSo;
if(value > 750)
return Prefix.Small;
return Prefix.MiserablySmall;
}
确切的值并不重要。重要的是它们有时会发生变化(前缀用于绘图,一些文本区域在开发中会改变大小)。我正在寻找一种编写这些文字的方式,这种方式可以让人类轻松更改它,而无需计算所有零。分隔符会很好。我考虑过编写 11 * 1000 * 1000 * 1000 * 1000 * 1000 * 1000
,但这只是勉强更易于管理。使用 Math.Pow()
会好一些,但我不习惯使用此类计算来定义常量。
最佳答案
您可以使用 11e18
而不是 11000000000000000000
。用m
表示是小数,所以11e18m
。
关于c# - 一种在 C# 中编写大数字文字的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15154333/