gpt4 book ai didi

c# - 将字符串数字转换为数字序列 - .Net 2.0

转载 作者:行者123 更新时间:2023-11-30 13:21:10 25 4
gpt4 key购买 nike

给定一个字符串

string result = "01234"

我想从字符串中获取单独的整数 0,1,2,3,4。

怎么做?

1

以下代码为我提供了 ascii 值

List<int> ints = new List<int>();

foreach (char c in result.ToCharArray())
{
ints.Add(Convert.ToInt32(c));
}

最佳答案

编辑:我没有发现“.NET 2.0”要求。如果你要做很多这样的事情,可能值得使用 LINQBridge ,并查看后面的部分 - 特别是如果您可以在仍以 2.0 为目标的情况下使用 C# 3.0。否则:

List<int> integers = new List<int>(text.Length);
foreach (char c in text)
{
integers.Add(c - '0');
}

不是很整洁,但它会工作。或者:

List<char> chars = new List<char>(text);
List<int> integers = chars.ConvertAll(delegate(char c) { return c - '0'; });

或者如果您对数组感到满意:

char[] chars = text.ToCharArray();
int[] integers = Arrays.ConvertAll<char, int>(chars,
delegate(char c) { return c - '0'; });

原始答案

其他一些人建议使用 ToCharArray .你不需要这样做 - string 已经实现了 IEnumerable<char> ,因此您已经可以将其视为一个字符序列。然后,您只需要将每个字符数字转换为整数表示即可;最简单的方法是减去字符“0”的 Unicode 值:

IEnumerable<int> digits = text.Select(x => x - '0');

如果你想在 List<int> 中使用它相反,只要这样做:

List<int> digits = text.Select(x => x - '0').ToList();

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

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