[ 
https://issues.apache.org/jira/browse/LUCENENET-284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12779883#action_12779883
 ] 

Nicholas Paldino commented on LUCENENET-284:
--------------------------------------------

Andrei,

You are right, there is not an error in calling the static Equals method on the 
Object class, but the preferred way in .NET to perform equality comparisons is 
to use EqualityComparer<T> (specifically, the instance returned by the Default 
property) or for comparisons, to use Comparer<T> (again, using the 
implementation returned by the static Default property).

> java vs .Net GetHashCode and Equals for ArrayList 
> --------------------------------------------------
>
>                 Key: LUCENENET-284
>                 URL: https://issues.apache.org/jira/browse/LUCENENET-284
>             Project: Lucene.Net
>          Issue Type: Bug
>            Reporter: Andrei Iliev
>         Attachments: ArrayList.patch, ComparableListOfT.patch
>
>
> 1)In java the hash code of a list (and ArrayList) is defined to be the result 
> of the following calc:
> <code>
> hashCode = 1;
>   Iterator i = list.iterator();
>   while (i.hasNext()) {
>       Object obj = i.next();
>       hashCode = 31*hashCode + (obj==null ? 0 : obj.hashCode());
>   }
> </code>
> In .Net it hash code of object itself.
>  
> 2) In java two lists are defined to be equal if they contain the same 
> elements in the same order. 
> In .Net it compares the object references.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to