C# 删除C中字符串中的重复字#

C# 删除C中字符串中的重复字#,c#,C#,这是我的密码: class Program { static void Main(string[] args) { string sentence = string.Empty; sentence = Console.ReadLine(); string[] sent = sentence.Split(' '); //to be sorted alphabeti

这是我的密码:

class Program
    {
        static void Main(string[] args)
        {
            string sentence = string.Empty;
            sentence = Console.ReadLine();
            string[] sent = sentence.Split(' ');
            //to be sorted alphabetically
            var x =
                from k in sent
                orderby k
                select k;

            foreach (string s in x)
            {
                    Console.WriteLine(s.ToLower());
            }

            Console.ReadLine();
        }
    }
是否有任何方法可以找到并删除重复的单词,或者我应该自己制定方法?

使用系统。Linq:

您可以使用Linq的扩展方法:

var sent = sentence.Split(' ').Distinct();
您也可以使用此选项在比较字符串时忽略字符串的大小写,例如,
“WORD”
“WORD”
将被视为重复:

var sent = sentence.Split(' ').Distinct(StringComparer.CurrentCultureIgnoreCase);
使用不同的:

foreach (string s in x.Distinct())
{
        Console.WriteLine(s.ToLower());
}

这应该满足您的所有要求:

class Program
{
    static void Main(string[] args)
    {
        string sentence = string.Empty;
        sentence = Console.ReadLine();

        var sent = sentence
            .Split(' ')
            .Distinct()
            .OrderBy(x => x);

        foreach (string s in sent)
        {
            Console.WriteLine(s.ToLower());
        }

        Console.ReadLine();
    }
}
希望有帮助

可能重复的
class Program
{
    static void Main(string[] args)
    {
        string sentence = string.Empty;
        sentence = Console.ReadLine();

        var sent = sentence
            .Split(' ')
            .Distinct()
            .OrderBy(x => x);

        foreach (string s in sent)
        {
            Console.WriteLine(s.ToLower());
        }

        Console.ReadLine();
    }
}