我有一个包含1000个名称的List<String>
。我想知道以字母"S"开头的名称数量。
最好的选项是什么?
我有一个包含1000个名称的List<String>
。我想知道以字母"S"开头的名称数量。
最好的选项是什么?
如果可用,使用Linq
using System.Linq;
list.Where(s=>s!=null && s.StartsWith("S")).Count();
如果没有可用的Linq。
int count=0;
foreach (string s in list) {
if (s!=null && s.StartsWith("S")) count++;
}
var count = list.Where(x => x != null && x.StartsWith("S")).Count();
List<T>
有这个属性,但是list.Where
返回的是IEnumerable<T>
。 - Tim Schmelterint k = 0;
foreach (string aName in yourStringList)
{
if (aName.StartsWith("S"))
{
k++
}
}
而k
将拥有以"S"开头的名称数量
List<String>
有1000个名称”并不意味着所有项目都必须有值。只有 OP 能告诉我们。 - Tim Schmelterint count = myList.Count(name => name.StartsWith("S"));
int count = myList.FindAll(name => name.StartsWith("S")).Count;
name => name!= null && name.StartsWith("S")
。)c
甚至没有定义:p 是的,我从你的回答中注意到了这一点,但我想在括号内进行编辑并将其归功于你,而不是只是窃取它。 - RawlingList<string> list = new List<string>();
...
int count = list.Count(c => c!= null && c.StartsWith("S"));