Heim  >  Artikel  >  Java  >  Java hashCode()

Java hashCode()

PHPz
PHPzOriginal
2024-08-30 16:20:36749Durchsuche

Die hashcode()-Methode der Java-Programmiersprache ist immer in der Objektklasse vorhanden. Daher erhält jede Java-Programmierklasse die Standardimplementierung der Methode hashcode(). Diese hashcode()-Methode ist ein ganzzahliger Hashcode-Wert des Objekts und eine native Methode. Die mehrfachen/vielen Aufrufe der Methode hashcode() müssen denselben ganzzahligen Wert zurückgeben, dies erfolgt jedoch nur, wenn das Objekt geändert wird, was auch in der Methode equal() verwendet wird. Ein hashcode()-Objektwert kann viele/mehrere Ausführungen derselben Anwendung ändern. Der Hash-Code ist nichts anderes als ein ganzzahliger Wert, der jedem Objekt in Java zugeordnet ist.

Syntax:

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

public int hashcode()

Wie funktioniert die Methode hashCode() in Java?

Die hashcode()-Methode funktioniert in Java, indem sie einen Hashcode-Wert einfach als Ganzzahl zurückgibt. Dieser ganzzahlige Hashcode-Wert wird häufig in einigen Hashing-basierten Sammlungen wie HashMap, HashTable, HashSet usw. verwendet. Die hashcode()-Methode von Java muss in jeder Klasse überschrieben werden, was dabei hilft, Methoden wie equal() zu überschreiben. .

Wenn die hashcode()-Methode während der Ausführung der Anwendung mehr als einmal für dasselbe bestimmte Objekt aufgerufen wird, gibt hashcode() konsistent denselben ganzzahligen Wert zurück. Der ganzzahlige Wert bleibt von nur einer Ausführung der jeweiligen Anwendung bis zu einer anderen Ausführung derselben App/Anwendung gleich. Wenn die beiden Objekte gleich sind, erzeugt die Methode hashcode() der Java-Codierungssprache die gleiche Ganzzahl. Wenn diese beiden Objekte nicht gleich/ungleich sind, wird für jedes der beiden Objekte der ganzzahlige Wert erzeugt erzeugt durch die Methode hashcode() für eines der beiden Objekte, die unterschiedlich sein werden. Es wird ähnlich sein, aber die Erzeugung unterschiedlicher ganzzahliger Werte für jedes der beiden Objekte ist besser/am besten, um die auf der Hashing-Leistung basierenden Sammlungen zu verbessern, die wie HashTable, HashMap usw. sind.

Gleiche/ähnliche Objekte erzeugen denselben Hash-Code, wenn die Objekte bis zum endgültigen Ausmaß gleich sind. Ungleiche Objekte von hashcode() erzeugen keine unterschiedlichen Hash-Codes.

Beispiele zur Implementierung von Java hashCode()

Im Folgenden finden Sie die genannten Beispiele:

Beispiel #1

Dies ist ein Beispiel für die Konvertierung eines Blog-Links und eines Texts in eine Hash-Code-Konvertierung. Zunächst wird eine öffentliche Klasse „StringExample1“ erstellt. Speichern Sie vorher die Programmdatei unter dem Namen StringExample1.java für dieses Programm. Anschließend wird die Funktion main() erstellt, um den Java-Programmcode einzugeben. Anschließend wird eine String-Variable namens „blogName1“ mit dem Wert „profitloops.com“ erstellt. Andererseits wird eine textprint1-Variable mit etwas Zeichenfolgetext erstellt.

Dann wird die Funktion hashcode() ausgeführt, um profitloops.com in Hashcode umzuwandeln. Ebenso wird der String auch für den anderen String-Text in einen Hash-Code umgewandelt. Um die Hash-Codes dieser String-Texte auszudrucken, wird die Funktion „System.out.println()“ verwendet. Schließen Sie dann die Klammer für den korrekten Syntaxzweck. Schauen Sie sich die Ausgabe unten an, damit Sie eine Vorstellung davon bekommen, wie der Hash-Code umgewandelt wird.

Code:

public class StringExample1{
public static void main(String[] args)
{
String blogName1 = "profitloops.com";
String textprint1 = "This is the Hashcode of the 'profitloops.com :: '";
System.out.println(textprint1);
System.out.println( blogName1.hashCode() );
System.out.println("This is the Hashcode of the string 'EDUCBA :: '");
System.out.println( "EDUCBA".hashCode() );
}
}

Ausgabe:

Java hashCode()

Beispiel #2

Dies ist das Beispiel von hashcode() für verschiedene Arten von Zeichen, Texten, Nullwerten usw., um zu wissen, wie sich hashcode() entwickelt hat und um zu wissen, was das Ergebnis der spezifischen Eingabe sein wird, wenn hashcode() ist gebraucht. Zunächst wird eine öffentliche Klasse „StringExample1“ erstellt, außerdem wird die öffentliche Hauptklasse zur Eingabe des Programmcodes erstellt. Dann wird hashcode() verwendet, um die Hash-Codes für das NULL-Element und das Space-Element zu ermitteln. Hier werden Zeichenfolgen namens „EDUCBA“, „Physics“ und „PHYSICS“, Zeichen kleines Alphabet „a“, großes Alphabet „b“ mit Hilfe der Funktion hashcode() in Hash-Codes umgewandelt. Die Funktion System.out.println() wird verwendet, um die Ausgabe des Terminals oder der Eingabeaufforderung oder eine andere Funktion anzuzeigen, um den Hash-Codewert für verschiedene Arten von Zeichenfolgenwerten oder andere Werte anzuzeigen.

Code:

public class StringExample1{
public static void main(String[] args)
{
String blogName1 = "";
System.out.println("This is the Hashcode of the Null Element::");
System.out.println( "".hashCode() );
System.out.println("This is the HashCode of Space Element::");
System.out.println( " ".hashCode() );
System.out.println("This is the Hashcode of the string 'EDUCBA :: '");
System.out.println( "EDUCBA".hashCode() );
System.out.println("This is the HashCode of the alphabet small a::");
System.out.println( "a".hashCode() );
System.out.println("This is the HashCode of the alphabet big A::");
System.out.println( "A".hashCode() );
System.out.println("This is the HashCode of the word physics::");
System.out.println( "physics".hashCode() );
System.out.println("This is the HashCode of the word PHYSICS::");
System.out.println( "PHYSICS".hashCode() );
}
}

Ausgabe:

Java hashCode()

Beispiel #3

Dies ist ein Beispiel für die Implementierung der Hash-Codes für verschiedene Variablenwerte. Wenn zwei Variablen gleich sind, liefern diese eine Ausgabe als gleiche Variablen und dann Hash-Codes für diese. Wenn zwei Variablenwerte nicht gleich sind, werden bei ungleichen Variablen auch die Hashcodes dieser Variablen gedruckt.

At first, public class “hash1” is created, and the public main is created. Then two variables, a1 and b1, are created with the same values. Then those two variable values are checked. If same, a1 and b1 hashcode values are printed. Here a1 and b1 are the same. Then string values c1 and d1 are created with different string values like 10 and 50. String values c1 and d1 are checked to know whether they are equal or not. Here not equal so “Unequal variables:” text is printed, and then hash codes of those variable values are printed. Check out the output of this hashcode() example so that you will understand the hashcode() concept better.

Code:

public class hash1{
public static void main(String[] args){
String a1 = "200";
String b1 = "200";
if(a1.equals(b1)){
System.out.println("Equal variables: \n");
System.out.println("A1 variable 200's hashcode :: "+a1.hashCode() + "\n B1 variable value 200's hashcode :: " + b1.hashCode()+"\n");
}
String c1 = "10";
String d1 = "50";
if(!c1.equals(d1)){
System.out.println("\nUn-equal variables: \n");
System.out.println("C1 variable value 10's hash code :: "+c1.hashCode() + "\nD1 variable value 50's hashcode :: " + d1.hashCode()+"\n");
}
}
}

Output:

Java hashCode()

Conclusion

We hope you learned what the definition of the Java hashcode() method and its syntax and its explanation is, How the hashcode() method of the Java Programming Language works with various examples to understand the concept better and so easily.

Das obige ist der detaillierte Inhalt vonJava hashCode(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Java-NamenskonventionenNächster Artikel:Java-Namenskonventionen