[Mono-list] string equals method
Danny
dgortonii at gmail.com
Tue May 21 22:34:34 UTC 2013
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
>
More information about the Mono-list
mailing list