例如,
如果字符串包含一个或多个重复字符,则为true。
如果字符串由所有不同的字符组成,则为false。
"A normal string with repeated characters" --> true
"Another" --> false
"abcdefghijklm" --> false
"aa" --> true
答案 0 :(得分:4)
string str = "ab"; //.ToLower() -- maybe
bool ok = str.GroupBy(x => x).Any(g => g.Count() > 1);
答案 1 :(得分:4)
将字符串视为一系列字符。如果 distinct 元素的计数不等于元素的总数,则序列至少包含一个副本。
换句话说:
bool containsDuplicates = str.Distinct().Count() != str.Length;
(这将在幕后构建一个HashSet<char>
,所以它基本上等同于明确构造一个然后使用Count
属性的答案......我只是觉得这个方法稍微清楚一点,个人而言,明确提到清晰度。)