In .NET, il GetHashCodemetodo viene utilizzato in molti punti nelle librerie di classi base di .NET. L'implementazione corretta è particolarmente importante per trovare rapidamente gli elementi in una raccolta o quando si determina l'uguaglianza. Esiste un algoritmo standard o best practice su come implementare le GetHashCodemie classi personalizzate in modo …
Data la seguente classe public class Foo { public int FooId { get; set; } public string FooName { get; set; } public override bool Equals(object obj) { Foo fooItem = obj as Foo; if (fooItem == null) { return false; } return fooItem.FooId == this.FooId; } public override int …
Un rigoroso operatore di uguaglianza ti dirà se due tipi di oggetti sono uguali. Tuttavia, c'è un modo per dire se due oggetti sono uguali, proprio come il valore del codice hash in Java? Stack Overflow question Esiste qualche tipo di funzione hashCode in JavaScript? è simile a questa domanda, …
Le risposte a questa domanda sono uno sforzo della comunità . Modifica le risposte esistenti per migliorare questo post. Al momento non accetta nuove risposte o interazioni. Quali problemi / insidie devono essere considerati quando si esegue l'override equals e hashCode?
Di recente ho letto questo documento di Developer Works . Il documento riguarda la definizione hashCode() e equals()in modo efficace e corretto, tuttavia non sono in grado di capire il motivo per cui abbiamo bisogno di ignorare questi due metodi. Come posso prendere la decisione di implementare questi metodi in …
Come possiamo decidere la migliore implementazione del hashCode()metodo per una raccolta (supponendo che il metodo uguale sia stato sovrascritto correttamente)?
Quando una classe in Java non sovrascrive hashCode () , la stampa di un'istanza di questa classe fornisce un numero univoco piacevole. Javadoc of Object dice di hashCode () : Per quanto ragionevolmente pratico, il metodo hashCode definito dalla classe Object restituisce interi distinti per oggetti distinti. Ma quando la …
Secondo la mia comprensione penso: È perfettamente legale che due oggetti abbiano lo stesso hashcode. Se due oggetti sono uguali (usando il metodo equals ()) allora hanno lo stesso hashcode. Se due oggetti non sono uguali, non possono avere lo stesso hashcode Ho ragione? Ora, se ho ragione, ho la …
Mi chiedevo solo perché i numeri primi sono usati nel hashCode()metodo di una classe ? Ad esempio, quando si utilizza Eclipse per generare il mio hashCode()metodo, viene sempre 31utilizzato il numero primo : public int hashCode() { final int prime = 31; //... } Riferimenti: Ecco un buon primer su …
Sto cercando di escogitare una buona funzione hash per le stringhe. E stavo pensando che potrebbe essere una buona idea riassumere i valori unicode per i primi cinque caratteri nella stringa (supponendo che abbia cinque, altrimenti fermati dove finisce). Sarebbe una buona idea o è una cattiva? Lo sto facendo …
Chiuso . Questa domanda è basata sull'opinione . Al momento non accetta risposte. Vuoi migliorare questa domanda? Aggiorna la domanda in modo che possa essere risolta con fatti e citazioni modificando questo post . Chiuso 3 anni fa . Migliora questa domanda Sono curioso di sapere cosa pensano le persone …
Fondamentalmente, sto cercando di creare un oggetto di oggetti unici, un set. Ho avuto la geniale idea di usare semplicemente un oggetto JavaScript con oggetti per i nomi delle proprietà. Ad esempio, set[obj] = true; Questo funziona, fino a un certo punto. Funziona alla grande con stringhe e numeri, ma …
Qual è un modo corretto e buono per implementare __hash__()? Sto parlando della funzione che restituisce un hashcode che viene quindi utilizzato per inserire oggetti in dizionari hashtabili. Poiché __hash__()restituisce un numero intero e viene utilizzato per "binning" di oggetti in hashtable, suppongo che i valori dell'intero restituito debbano essere …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.