C# 检查字符串中的重复字符

C# 检查字符串中的重复字符,c#,string,duplicates,repeat,C#,String,Duplicates,Repeat,检查输入字符串是否包含至少一个在一行中出现两次的字母,例如: xx, abcdde(dd), aabbccdd(aa、bb、cc或dd), UGKNBFDDGIRMOPN(双dd) 下面的方法不起作用 input.Distinct().Count(); 对于awea(重复a),它返回true。我只需连续检查重复字符。如果字符串包含多个字符,则返回true: input.Distinct().Count() != input.Length; 您需要检查输入字符串的当前和下一个字符索引。请参阅下

检查输入字符串是否包含至少一个在一行中出现两次的字母,例如:

xx,
abcdde(dd),
aabbccdd(aa、bb、cc或dd),
UGKNBFDDGIRMOPN(双dd)

下面的方法不起作用

input.Distinct().Count();

对于
awea
(重复a),它返回true。我只需连续检查重复字符。

如果字符串包含多个字符,则返回true:

input.Distinct().Count() != input.Length;

您需要检查输入字符串的当前和下一个字符索引。请参阅下面的示例代码

        static void Main(string[] args)
    {
        var input = Console.ReadLine();
        var result = HasRepeatedCharacters(input);
        Console.WriteLine(result);
        Console.ReadLine();
    }

    public static bool HasRepeatedCharacters(string input)
    {
        bool hasRepeatedCharacters = false;

        if(input.Length >= 2)
        {
            for (var index = 0; index < input.Length - 1; index++)
            {
                if(input[index] == input[index + 1])
                {
                    hasRepeatedCharacters = true;
                }
            }
        }
        return hasRepeatedCharacters;
    }
static void Main(字符串[]args)
{
var input=Console.ReadLine();
var结果=HasRepeatedCharacters(输入);
控制台写入线(结果);
Console.ReadLine();
}
公共静态bool HasRepeatedCharacters(字符串输入)
{
bool hasRepeatedCharacters=false;
如果(input.Length>=2)
{
对于(var index=0;index
可能:
isDistinct=s.Distinct().Count()==s.Count()?方法返回整数,而
true
是布尔值。