c# - char 数组返回值,如 50'w'
问题描述
语言 =C# 软件 = Visual Studio 2015
在编写程序以查找给定字符串中的整数总和时,我遇到了问题。在从字符串中获取每个字符时,我得到的值就像87'W',101'e'
而不是'w'
, 'e'
。(也显示相应的 char 整数,这不是必需的)
程序:
public static void Main()
{
string s = "Welcome to 2018";
int sumofInt = 0;
for (int i = 0; i < s.Length; i++)
{
if (Char.IsDigit(s[i]))
{
sumofInt += Convert.ToInt32(s[i]);
}
}
Console.WriteLine(sumofInt);
}
预期 o/p = 11 实际 o/p = 203
这里的s[i]
价值来了,例如50'2'
有什么办法可以避免这种字符的数字表示(50、87 等)??? (不修剪)
解决方案
试试这个:-您将 char 的 ASCII 表示形式作为整数
public static void Main()
{
string s = "Welcome to 2018";
int sumofInt = 0;
for (int i = 0; i < s.Length; i++)
{
int val = (int)Char.GetNumericValue(s[i]);
if (Char.IsDigit(val))
{
sumofInt += Convert.ToInt32(val);
}
}
Console.WriteLine(sumofInt);
}
推荐阅读
- docker - 给 docker 更多的磁盘空间用于容器
- python - 从字节流读取时数据损坏
- cypress - 使用 salty- / cypress-testrail-reporter
- mysql - CASE WHEN IN ({set of numbers})
- javascript - 视差背景图像不显示在 iphone 上,但它显示在 android 上我该如何解决这个问题
- c++ - 对“ParMETIS_V3_PartMeshKway”的未定义引用
- c# - 如何使用图标呈现数据绑定的 WinForms DataGridView 列?
- python - 在 Instagram 中抓取一定数量的帖子
- ios - 如何定义一个变量可以快速保存通用协议的类型?
- wordpress - 如何在自定义 PHP 文件中使用选定的 WP 函数?