c# - 检测 int 中不为零的数字的方法?

标签 c# .net

我很好奇是否有任何简单的方法来检测 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/

相关文章:

c# - .net 文档用 mshtml 写

c# - 特定 ASP.NET MVC4 URL 的自定义配置设置

c# - 注销被禁止的用户

c# - 进程终止后清理 AppBar

c# - 为什么在 C# 中使用 String.Concat()?

c# - Windows 窗体线程正在失去他们的文化

c# - CS0053错误问题

c# - 错误信息 Nullable object must have a value

c# - "SmtpFailedRecipientException: Mailbox unavailable"邮箱可用时

.net - 引用Microsoft.SqlServer.Smo.dll