gpt4 book ai didi

c# - 从字符串中读取字符并计算每个字符

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

我的代码存在以下问题:我无法理解如何读取每个字符并在所有轮换结束时将每个字符汇总到一个 int 中。 这是我的代码:

class Program
{
static void Main()
{
SortedDictionary<string, int> text = new SortedDictionary<string, int>();
string[] characters = Console.ReadLine()
.Split()
.ToArray();

foreach (var character in characters)
{
if (text.ContainsKey(character))
{
text[character]++;
}
else
{
text.Add(character, 1);
}
}
foreach (var character in text)
{
Console.WriteLine($"{character.Key} -> {character.Value}");
}
}
}

我在这里读到一个字符串在字典中出现了多少次。上面写的我需要得到的是不同的。请帮忙,谢谢!

最佳答案

String.Split()默认情况下在新行上拆分,所以 characters包含一个包含整行的字符串。如果你想要每个字符,只需去掉 Split (并将 Dictionary KeyType 更改为 char 以匹配值):

SortedDictionary<char, int> text = new SortedDictionary<char, int>();
char[] characters = Console.ReadLine().ToArray();
// ...

https://www.ideone.com/hnMSv1

string工具 IEnumerable<char>实际上,您甚至不需要将字符转换为数组:

SortedDictionary<char, int> text = new SortedDictionary<char, int>();
string line = Console.ReadLine();
foreach( char character in line )
// ...

https://www.ideone.com/nLyBfC

关于c# - 从字符串中读取字符并计算每个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53180666/

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