-1

我对使用谓词在集合中查找特定内容非常陌生。这是我的例子:

static void FindPersons(string firstLetter)
        {
            List<string> names = new List<string>()
        {"Marcus", "John", "Jesse", "Lance", "Aaron", "Archibald", "Victor"
        };



            List<string> names2 = names.FindAll(a => a.StartsWith(firstLetter));

            foreach (var name in names2)
            {
                Console.WriteLine(name);
            }
        }

我会在 Main 中调用该方法:

FindPersons("a");

我必须对第一个字母使用字符串,因为 StartsWith 将字符串作为参数(或者我可以使用 char 和 ToString()。

如何使用这种较短的语法来做到这一点?还有一个问题 - 通常,在您的工作中,您多久使用一次谓词来查找集合中的特定对象?谢谢。

4

1 回答 1

1

只需使用Console.WriteLine(string.Join<string>("\n", result));以下方法即可。

    static void FindPersons(string firstLetter)
    {
        List<string> names = new List<string>()
        {"Marcus", "John", "Jesse", "Lance", "Aaron", "Archibald", "Victor"
        };

        List<string> result = names.Where(a => a.StartsWith(firstLetter, StringComparison.InvariantCultureIgnoreCase)).ToList();
        Console.WriteLine(string.Join<string>("\n", result));

    }
于 2013-10-07T09:34:52.327 回答