Thread Array in Hash transformieren (5 answers)
Opened by rosti at 2011-04-10 22:36

clms
 2011-04-10 23:18
#147549 #147549
User since
2010-08-29
373 Artikel
BenutzerIn
[default_avatar]
2011-04-10T20:36:51 rosti
gegeben ist ein array
Code (perl): (dl )
qw(a b c d);
damit soll nun ein hash erzeugt werden, wo jedes Arrayelement auf den Nachfolger zeigt

Mein erster Ansatz:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
my @array2 = @array;   # @array:  a => b, c => d 
shift @array2;         # @array2: b => c, d => e

# beide Arrays sollen eine gradzahlige Anzahl von Elementen haben => eines muss um 1 erweitert werden
if (@array % 2) {
  push @array, undef;
} else {
  push @array2, undef;
}
my %hash = (@array,@array2);  # und fertig ist der Hash
(ungetestet)

2011-04-10T20:36:51 rosti
Code (perl): (dl )
a => [b], b => [c], c => [d], d => []
Da zeigt jedes Element auf ein anonymes Array mit seinem Nachfolger als einzigem Element. Das leistet mein Code nicht.
Last edited: 2011-04-10 23:23:48 +0200 (CEST)

View full thread Array in Hash transformieren