Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# i可比较<;字符串>;实现-无法访问字符串的长度 class MyComparer:IComparable { 公共整数比较(字符串秒) { int diff=此.Length-秒.Length; 返回。。。 } }_C#_Collections - Fatal编程技术网

C# i可比较<;字符串>;实现-无法访问字符串的长度 class MyComparer:IComparable { 公共整数比较(字符串秒) { int diff=此.Length-秒.Length; 返回。。。 } }

C# i可比较<;字符串>;实现-无法访问字符串的长度 class MyComparer:IComparable { 公共整数比较(字符串秒) { int diff=此.Length-秒.Length; 返回。。。 } },c#,collections,C#,Collections,该代码不起作用,因为“MyComparer”不包含“长度”的定义,所以如何访问长度?您实现了错误的接口。相反,您需要: class MyComparer:IComparer { 公共整数比较(字符串x、字符串y) { int diff=x.长度-y.长度; } } 为什么您希望您的MyComparer应该有一个属性Length?您正在尝试比较两个字符串吗?现在还不清楚这到底是为了什么String已经实现了IComparable。理论上,MyComparer将包含一个用于比较的字符串属性。是的,我

该代码不起作用,因为“MyComparer”不包含“长度”的定义,所以如何访问长度?

您实现了错误的接口。相反,您需要:

class MyComparer:IComparer
{
公共整数比较(字符串x、字符串y)
{
int diff=x.长度-y.长度;
}
}

为什么您希望您的
MyComparer
应该有一个属性
Length
?您正在尝试比较两个字符串吗?现在还不清楚这到底是为了什么
String
已经实现了
IComparable
。理论上,
MyComparer
将包含一个用于比较的字符串属性。是的,我想比较两个具有IComparable的字符串。VisualStudio标记错误:“MyComparer”不包含“长度”的定义
    class MyComparer : IComparable<string>
    {


        public int CompareTo(string second)
        {
            int diff = this.Length - second.Length;
            return ...
        }

    }
class MyComparer : IComparer<string>
{
    public int Compare(string x, string y)
    {
        int diff = x.Length - y.Length;

    }
}