J’ai une classe qui contient les deux propriétés suivantes: public int Id { get; private set; } public T[] Values { get; private set; } Je l’ai rendu IEquatable et object.Equals l’object. object.Equals comme ceci: public override bool Equals(object obj) { return Equals(obj as SimpleTableRow); } public bool Equals(SimpleTableRow other) { // Check for null […]
Eclipse 3.5 a une fonctionnalité très intéressante pour générer des fonctions Java hashCode (). Cela générerait par exemple (légèrement raccourci 🙂 class HashTest { int i; int j; public int hashCode() { final int prime = 31; int result = prime + i; result = prime * result + j; return result; } } (Si […]
J’ai lu que la construction de case class Scala’a génère automatiquement un ajustement equals et l’implémentation de hashCode . A quoi ressemble exactement le code généré?
Je veux hacher le tableau d’ byte[] à l’aide de l’algorithme SHA1 avec l’utilisation de SHA1Managed . Le hash byte[] proviendra du test unitaire. Le hachage attendu est 0d71ee4472658cd5874c5578410a9d8611fc9aef (sensible à la casse). Comment puis-je atteindre cet objective? public ssortingng Hash(byte [] temp) { using (SHA1Managed sha1 = new SHA1Managed()) { } }
Existe-t-il une règle spécifique sur la façon dont la substitution equals() & hashCode() dans les sous-classes en considérant les super champs ? sachant qu’il y a beaucoup de parameters: les super champs sont privés / publics, avec / sans getter … Par exemple, Netbeans généré equals () & hashCode () ne tiendra pas compte des […]
En général, l’implémentation par défaut de Object.hashCode() est une fonction de l’adresse allouée de l’object en mémoire (bien que cela ne soit pas obligatoire pour JLS ). Étant donné que la machine virtuelle dérive les objects en mémoire, pourquoi la valeur renvoyée par System.identityHashCode() ne change-t-elle jamais pendant la durée de vie de l’object? S’il […]
J’ai remarqué dans le code source Java 6 de Ssortingng que hashCode ne cache que des valeurs autres que 0. La différence de performances est illustrée par l’extrait de code suivant: public class Main{ static void test(Ssortingng s) { long start = System.currentTimeMillis(); for (int i = 0; i < 10000000; i++) { s.hashCode(); } […]
Comment les classes de modèle doivent-elles être égales et le hashcode doit-il être implémenté dans Hibernate? Quels sont les pièges courants? L’implémentation par défaut est-elle suffisante dans la plupart des cas? Est-il judicieux d’utiliser des clés professionnelles? Il me semble que c’est assez difficile de travailler correctement dans toutes les situations, lorsque la récupération paresseuse, […]
Dis que j’ai ma propre classe public class MyObj { /* … */ } Il a des atsortingbuts et des méthodes. Il NE DOIT PAS implémenter des équivalents, NE PAS implémenter hashCode. Une fois que nous appelons les égaux et le hashCode, quelles sont les implémentations par défaut? De la classe d’objects? Et quels sont-ils? […]
Est-il possible d’obtenir un identifiant unique d’une instance? GetHashCode() est identique pour les deux références pointant vers la même instance. Cependant, deux instances différentes peuvent (assez facilement) obtenir le même code de hachage: Hashtable hashCodesSeen = new Hashtable(); LinkedList l = new LinkedList(); int n = 0; while (true) { object o = new object(); […]