[英]Count the occurrences of a letter in a string with LINQ
我試圖實現一段代碼,它將返回字符串中指定字母的計數。 我可以使用 for 循環來做到這一點,但我發現使用 LINQ 表達式的解決方案更優雅。 這是我的代碼:
public static int CountAs(string countA)
{
var test = count.Select(x => x == 'a').Count();
return test;
}
我試圖計算countA參數中存在多少個小寫字母a。 我的代碼有什么問題?
先感謝您!
更新
我應該使用的方法是Where方法而不是Select方法。 使用它解決了我的問題:! function 可以重寫為:
public static int CountAs(string input)
{
return input.Where(x => x == 'a').Count();
}
或者,您可以只使用 Count 方法直接過濾掉所需的字母:
public static int CountAs(string input)
{
return input.Where(x => x == 'a').Count();
}
感謝所有前來救援的人!!
使用.Where
而不是.Select
。 .Where
查找符合您的條件的項目,而.Select
告訴它如何返回所述項目,如果您需要轉換它們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.