| maison  | Hardware  | réseaux  | programmation  | Logiciel  | Dépannage  | systèmes |  
programmation  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Connaissances Informatiques >> programmation >> Programmation Java >> Content
    Pourquoi une chaîne Immuable calculer sa valeur Hash
    ? Applications Java modèle des composants de code comme des objets , chaque objet ayant un domaine de responsabilité . Objets fournissent des méthodes pour mener à bien leurs responsabilités. Certaines méthodes Java sont mises en œuvre par tous les objets possibles , y compris les chaînes. Le framework Java permet aux développeurs d'utiliser certains types de structures de stockage de données , dont certaines utilisent des valeurs hash- code pour stocker des objets . Une valeur de code de hachage utilise un code pour faire référence à un objet spécifique , permettant la classe de collection à mettre en œuvre des méthodes efficaces pour stocker plusieurs objets au sein du programme . Code Java peut calculer les valeurs de hachage de code pour tous les objets , y compris les chaînes, qui sont immuables . String Le contenu

    variables chaîne dans les programmes Java sont des objets de la classe String , stocker des séquences de caractères de texte. Cela peut être déroutant , car les programmes créent des variables de chaîne en utilisant le même type de structure utilisée pour les variables de type primitif comme des numéros . L'exemple de code suivant illustre la création d'une variable chaîne : String name = " John";

    Le programme peut réaliser de méthodes de la classe String de cette variable , dont certaines impliquent modifier le contenu du texte . Les méthodes qui modifient le contenu d'une chaîne reviennent normalement une nouvelle chaîne, plutôt que de modifier la chaîne existante . C'est parce que les chaînes sont immuables , ce qui signifie qu'une fois une variable de chaîne est créée, son contenu ne peut être modifié . Programmes dans lesquels le contenu d'une chaîne semble être modifiées sont en fait la création de nouvelles chaînes pour remplacer ceux existants .
    HashCode Fonction

    tous les objets Java offrent le " fonction hashCode " . C'est parce que toutes les classes Java héritent de la superclasse Object , qui fournit la méthode " hashCode " . L'exemple de code suivant illustre l' appel à la méthode de la variable String : name.hashCode ();

    appel de cette méthode provoque Java pour générer une valeur de code de hachage pour la variable de chaîne spécifiée . Création d' une valeur de code de hachage pour un objet chaîne implique le même processus que vous souhaitez utiliser pour n'importe quel objet .
    Résultat

    La méthode " hashCode " se traduit par une valeur entière représentant l'objet en question . Ce numéro permet à des classes Java pour optimiser l'efficacité lors de l'enregistrement des valeurs de données , en particulier en conjonction avec la classe HashMap ou d'autres classes de collections connexes. Dans la plupart des cas, un programmeur Java n'a pas besoin de se soucier des détails des numéros utilisés comme hash - code pour des articles tels que des cordes , comme les classes de collections gérer ce détail.
    Égalité
    Photos

    le résultat de l'appel de la " hashCode " sur deux points qui sont égaux devrait être le même numéro. Par exemple, les deux variables de chaînes suivantes devraient générer la même valeur de hachage de code : String UnNom = " John"; cordes otherName = " John";

    Si deux objets renvoient un résultat vrai lorsqu'il est utilisé dans le Equals , puis Java considère comme des égaux, auquel cas ils devraient se traduire par le code de hachage même . Par exemple , le code suivant entraînerait une vraie valeur : booléen AreEqual = someName.equals ( otherName ) ;

    C'est typiquement le cas que si les deux chaînes ne sont pas égales , elles génèrent des valeurs de hachage de code , mais ce n'est pas garanti . (Voir les références 1, 2, 3) pour

    Previous :

    next :
      articles connexes
    ·Comment développer un test de personnalité Score appl…
    ·Comment faire pour créer un curseur personnalisé en J…
    ·Un tutoriel Client Server Java 
    ·Qu'est-ce qu'une source d'événements en Java 
    ·Comment utiliser Bot AIML dans les applications Java 
    ·Comment faire pour utiliser Java pour lire Excel 
    ·Comment comparer les caractères en programmation Java 
    ·Comment changer les couleurs en Java avec Events 
    ·Comment exécuter un script de programme Java sous Ubun…
    ·Comment faire pour créer un pot Eclipse 
      articles en vedette
    ·Comment afficher Matrices Python Facilement 
    ·Comment faire la relation un no- Strings Attached 
    ·Tutoriel en Pascal Programmation Animation 
    ·Comment arrêter MySQL Avec Ubuntu 
    ·Comment suivre instance d'une classe en utilisant une s…
    ·Comment concevoir un organigramme pour les conversions …
    ·Comment utiliser Linux Lineage 
    ·Comment se débarrasser des erreurs AppleScript 
    ·Comment éclaircir une image en Python 
    ·Comment définir des valeurs dans Silverlight 
    Copyright © Connaissances Informatiques http://fr.wingwit.com