c# - 计算文件中有多少个字母和哪些字母不能正常工作
问题描述
a = 49 '1'
d = 52 '4'
我得到像(应该是a = a
d = d
)这样的随机字符
我尝试将其他东西放在“temp [j]”上,但没有得到想要的结果我被困在这个上面超过 2 周
lettres = Convert.ToChar(temp[j] - '0');// Convert.ToChar(temp[j]);// - '0');
switch (lettres)
{
case 'A':
numbers[0] += 1;
numberos = numbers;
break;
case 'B':
numbers[1] += 1;
numberos = numbers;
break;
case 'C':
numbers[2] += 1;
numberos = numbers;
break;
case 'D':
numbers[3] += 1;
numberos = numbers;
break;
case 'E':
numbers[4] += 1;
numberos = numbers;
break;
case 'F':
numbers[5] += 1;
numberos = numbers;
break;
case 'G':
numbers[6] += 1;
numberos = numbers;
break;
case 'H':
numbers[7] += 1;
numberos = numbers;
break;
temp[j] 是一个像香蕉这样的字符串,而 j 是 for 循环的一部分,所以假设它的 1 结果应该是 numbers[0] +=1 因为字母应该是 A 但它是 49'1' 然后开关不做自'1'以来的任何事情都不是案例
解决方案
您可以为此使用 LINQ:
Dictionary<char, int> frequencies = text
.GroupBy(c => c)
.ToDictionary(g => g.Key, g => g.Count());
另外,在顶部添加:
using System.Linq;
using System.Collections.Generic;
推荐阅读
- php - Symfony .htaccess - 500 third level domain
- javascript - Cannot copy text from WKWebview to clipboard
- html - 如何使用 HTML 列表框和 SQL 代码显示表格中的某些列?
- python - 如何选择只有正值的列?
- python - 比循环整个文件更好的正则表达式实现?
- spring - 无法使用 jasypt 登录数据库
- c# - DropDownListFor 不选择十进制值
- javascript - 动态路径 NavLink React
- magento2 - Elasticsearch 范围过滤器不起作用,我如何使用价格范围过滤价格
- matlab - matlab如何调用get方法?