Jasmin: Arrays vergleichen

Beitrag lesen

Hallo digi,

Aber ich verstehe den Inkrement $count{$element}++ nicht. Wird da der Inhalt von array1[0] bis array2[letztes Element] immer um eins hochgezählt? Und wenn ja, wohin wird es gespeichert?

Nun die foreach-Schleife geht alle Elemente _beider_ Arrays durch (die beiden werden aneinandergehängt). Dann wird für jedes Element ein neuer Schlüssel im anfangs leeren Hash %count angelegt. Der Wert wird auf 1 gesetzt (0+1). Ist allerdings schon ein Schlüssel vorhanden, d.h. das Arrayelement kam schon mal vor, wird der Wert um eins erhöht. Somit erhält man z.B. sowas:
@arr1 = (1,2,3,1);
@arr2 = (2,4,5);
%count = {
"1" => 2,
"2" => 2,
"3" => 1,
"4" => 1,
"5" => 1
}

Grüße
Jasmin