c#的新手。我希望我的程序计算特定字母在字符串中出现的数量。
public static int countLetters(string word, string countableLetter)
{
int count = 0;
foreach (char c in word)
{
count++;
}
return count;
}
答案 0 :(得分:1)
如果您搜索确切的字符,请将第二个参数类型更改为char
:
public static int countLetters(string word, char countableLetter)
{
int count = 0;
foreach (char c in word)
{
if(countableLetter == c)
count++;
}
return count;
}
但您可以使用Count()
命名空间中包含的System.Linq
方法执行此操作:
return word.Count(x => x == countableLetter);
<强> 其他: 强>
如果要查找包含在任何字符串中的任何字符,则可以使用:
public static int countLetters(string word, string countableLetters)
{
int count = 0;
foreach (char c in word)
{
if(countableLetters.Contains(c))
count++;
}
return count;
}
或使用LINQ:
return word.Count(x => countableLetters.Contains(x));
答案 1 :(得分:0)
您可以使用Enumerable.Count
:
var count = word.Count(ch => ch == countableLetter);
请注意,您应将countableLetter
更改为char
而不是string
。