获取列表中每个项目的长度c#

时间:2015-10-29 08:14:34

标签: c#

我有一些字符串类型变量包含在列表中,如此

new List<string>{ varFullName, varHouseNameNumber, varPostCode, varRelationship, varPercOfBenefit }

我喜欢todo的是检查列表中每个项目的长度,如果任何项目的长度为0,则返回false。

我尝试使用像BenOneInput.Any(item => item.Length.Equals(0))这样的东西,但是只要列表中的1个项目的长度大于0,整个事情就会返回true。

这可能吗?

5 个答案:

答案 0 :(得分:1)

您只需使用All

即可
var allNonZero = values.All(x=>x.Lenght > 0);

它将检查所有值是否Length不是0

或者@Asad Saeeduddin

var allNonZero = !values.Any(x=>x.Length==0);

答案 1 :(得分:1)

结果是正确的,因为Any()检查列表中是否存在长度为== 0的项目。如果存在,则返回true。你需要否定你的结果。

var list = new List<string> {"test", "", "test2"};
var result = !list.Any(item => item.Length.Equals(0));

答案 2 :(得分:0)

使用All

var all = list.All(x => x.Length > 0);

答案 3 :(得分:0)

试试这个:

List<string> BenOneInput = new List<string>{ "varFullName", "varHouseNameNumber", "varPostCode", "varRelationship", "varPercOfBenefit" };
bool result = BenOneInput.All(item => !item.Length.Equals(0));

答案 4 :(得分:-2)

你可以这样做

string any;
for (i = 0; i > listname.length; i++) { 
    any = listname[i].ToString()
    Console.WriteLine(any.length);
}