Ein Hash ist eine Sammlung von Schlüssel/Wert -Paaren.
Hash-Variablen in Perl beginnen mit einem Prozentzeichen (%).
Auf das Hash-Elementformat zugreifen: ${key} .
Hier ist ein einfaches Hash-Beispiel:
Wenn Sie das obige Programm ausführen, lautet das Ausgabeergebnis:
Es gibt zwei Möglichkeiten, einen Hash zu erstellen:
$data{'google'} = 'google.com';$data{'codercto'} = 'codercto.com';$data{'taobao'} = 'taobao.com';
Das erste Element in der Liste ist der Schlüssel und das zweite Element ist der Wert.
%data = ('google', 'google.com', 'codercto', 'codercto.com', 'taobao', 'taobao.com');
Sie können auch das Symbol => verwenden, um Schlüssel/Wert festzulegen:
%data = ('google'=>'google.com', 'codercto'=>'codercto.com', 'taobao'=>'taobao.com');
Das folgende Beispiel ist eine Variation des obigen Beispiels, bei dem - anstelle von Anführungszeichen verwendet wird:
%data = (-google=>'google.com', -codercto=>'codercto.com', -taobao=>'taobao.com');
Auf diese Weise können keine Leerzeichen im Schlüssel vorkommen. Die Art und Weise, Elemente zu lesen, ist:
$val = $data{-google}$val = $data{-codercto}
Zugriff auf das Hash-Elementformat: ${key} . Das Beispiel lautet wie folgt:
Wenn Sie das obige Programm ausführen, lautet das Ausgabeergebnis:
Sie können Werte aus einem Hash genau wie aus einem Array extrahieren.
Der Hashwert wird in ein Array-Syntaxformat extrahiert: @{key1,key2} .
Wenn Sie das obige Programm ausführen, lautet das Ausgabeergebnis:
Array: 45 40
Mit der Funktion „keys“ können wir alle Schlüssel des Hashs lesen. Die Syntax lautet wie folgt:
Schlüssel %HASH
Diese Funktion gibt ein Array aller Schlüssel für alle Hashes zurück.
Wenn Sie das obige Programm ausführen, lautet das Ausgabeergebnis:
taobaogooglecodercto
Ebenso können wir die Wertefunktion verwenden, um alle Werte des Hashs zu lesen. Das Syntaxformat ist wie folgt:
Werte %HASH
Diese Funktion gibt ein Array aller Werte für alle Hashes zurück.
Wenn Sie das obige Programm ausführen, lautet das Ausgabeergebnis:
taobao.comcodercto.comgoogle.com
Wenn Sie ein Schlüssel/Wert-Paar lesen, das nicht im Hash vorhanden ist, wird ein undefinierter Wert zurückgegeben und während der Ausführung erscheint eine Warnung.
Um diese Situation zu vermeiden, können wir die Funktion „exists“ verwenden, um festzustellen, ob der Schlüssel existiert, und ihn lesen, wenn er existiert:
Wenn Sie das obige Programm ausführen, lautet das Ausgabeergebnis:
Der Facebook-Schlüssel existiert nicht
Im obigen Code haben wir die IF...ELSE -Anweisung verwendet, die wir in den folgenden Kapiteln ausführlich vorstellen werden.
Die Hash-Größe ist die Anzahl der Elemente. Wir können die Hash-Größe ermitteln, indem wir zuerst alle Elementarrays mit Schlüssel oder Wert abrufen und dann die Anzahl der Array-Elemente berechnen.
Wenn Sie das obige Programm ausführen, lautet das Ausgabeergebnis:
1 – Hash-Größe: 32 – Hash-Größe: 3
Das Hinzufügen von Schlüssel/Wert-Paaren kann durch einfache Zuweisung erfolgen. Um jedoch ein Hash-Element zu löschen, müssen Sie die Löschfunktion verwenden:
Wenn Sie das obige Programm ausführen, lautet das Ausgabeergebnis:
1 - Hash-Größe: 32 - Hash-Größe: 43 - Hash-Größe: 3