gpt4 book ai didi

c# - 将字符串转换为 int 的问题

转载 作者:太空宇宙 更新时间:2023-11-03 20:17:06 24 4
gpt4 key购买 nike

我在将 string 逐个字符地转换为 int 时遇到了一些问题。当我单步执行代码时,string 中的每个 char 都被转换为其 ASCII 表示形式。例如,0 被转换为 48

我想做的是取一个 4 位数字,取每个数字并做一些不同的事情。

例如,如果date10415,那么num1应该是0,num2 4,num3 1 和 num4 5。

foreach (char c in date1)
{
switch (num)
{
case 1:
// calculate first number
cNum = Convert.ToInt32(c);
num1 = c * 1;
break;

case 2:
// calculate second number
cNum = Convert.ToInt32(c);
num2 = c * 2;
break;

case 3:
// calculate third number
cNum = Convert.ToInt32(c);
num3 = c * 3;
break;

case 4:
// calculate fourth number
cNum = Convert.ToInt32(c);
num4 = c * 4;
break;

default:
break;
}

num++;
}

非常感谢任何帮助,如果需要任何其他帮助,请告诉我。

最佳答案

尝试使用 GetNumericValue 而不是 Convert.ToInt32()。

此处的文档:http://msdn.microsoft.com/en-us/library/system.char.getnumericvalue.aspx

另外 - 你可能会简化你的代码,除非我遗漏了什么:

num1 = Char.GetNumericValue(date1[0]);
num2 = Char.GetNumericValue(date1[1]);
num3 = Char.GetNumericValue(date1[2]);
num4 = Char.GetNumericValue(date1[3]);

这对我来说似乎有点奇怪,但无论如何你的循环只处理前 4 个字符。

如果你想处理超过 4 个,我会回到使用循环并将所有数字插入数组或其他东西,而不是为每个创建一个特定变量。

关于c# - 将字符串转换为 int 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16022566/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com