我很好奇是否有任何简单的方法来检测 int
/long
中非零数字的数量。我想创建一个小程序,将输入(标准数字)格式化为科学记数法。
我试图找到任何可以帮助完成此操作的 int
函数,但我不是 100% 流利,而且没有任何看起来有帮助的函数。
另外,我想找到一种方法将 int
/long
中的每个数字放入一个列表中,每个数字都是它自己的元素。也许有一种方法可以将零与非零分开。
任何奇思妙想(和评论)将不胜感激,谢谢!
最佳答案
您可以简单地将它变成一个字符串(使用 InvariantCulture
)并只计算非零数字:
public int NonZeroDigits(int input)
{
return input.ToString(CultureInfo.InvariantCulture).Count(digit => digit >= '1' && digit <= '9');
}
关于c# - 检测 int 中不为零的数字的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24375095/