[Mono-list] string equals method

Daniel Lo Nigro lists at dan.cx
Tue May 21 23:00:08 UTC 2013


>
> The .NET question is easy to answer by using Reflector/ILSpy/or similar.

The source code for String is probably in the SSCLI source which Microsoft
have publicly released.


On Wed, May 22, 2013 at 8:34 AM, Danny <dgortonii at gmail.com> wrote:

> The mono question is easy to answer by looking at their sources.  The .NET
> question is easy to answer by using Reflector/ILSpy/or similar.  I won't
> answer the .NET question here b/c I don't want to cause any IP issues with
> posting .NET internal information on a mono site.
>
>
> On 05/21/2013 06:25 PM, Edward Ned Harvey (mono) wrote:
>
>> Msdn says string.Equals() overrides the string == operator.
>>
>> Msdn also says it's an ordinal comparison, blah blah.
>>
>> The thing I'd like to know:  Ordinal string comparison tends to be an
>> expensive thing to do.  This can be skipped under certain circumstances,
>> such as, if ReferenceEquals returns true, or if the two string length's
>> are different.
>>
>> Can anybody authoritatively say, under the hood, that .Net or mono
>> actually do this sort of acceleration in the string.Equals() method?
>>
>> public static bool operator ==( string a, string b)
>>
>> {
>>
>>                  if ( Object.ReferenceEquals(a,b) )
>>
>>                                  return true;
>>
>>                  else
>>
>>                  {
>>
>>                                  if ( a.Length != b.Length )
>>
>>                                                  return false;
>>
>>                                  else
>>
>>                                  {
>>
>>                                                  for ( int i=0;
>> i<a.Length ; i++ )
>>
>>                                                                  if (
>> a[i] != b[i] )
>>
>>
>>        return false;
>>
>>                                                  return true;
>>
>>                                  }
>>
>>                  }
>>
>> }
>>
>>
>>
>> ______________________________**_________________
>> Mono-list maillist  -  Mono-list at lists.ximian.com
>> http://lists.ximian.com/**mailman/listinfo/mono-list<http://lists.ximian.com/mailman/listinfo/mono-list>
>>
>>  ______________________________**_________________
> Mono-list maillist  -  Mono-list at lists.ximian.com
> http://lists.ximian.com/**mailman/listinfo/mono-list<http://lists.ximian.com/mailman/listinfo/mono-list>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-list/attachments/20130522/cb321ab2/attachment.html>


More information about the Mono-list mailing list