Leser: 22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
my %personen = ( 'Moppel' => { Alter => 5, Name => 'Oskar Mopso', Groesse => 115 }, 'Kamel' => { Alter => 27, Name => 'Dr. O. Medar', Groesse => 250 }, ); $personen{'Nullnummer'} = { Alter => 0, Name => 0, Groesse => 0 }; print "Der Name von Kamel ist ", $personen{'Kamel'}->{Name}, "\n"; # bei nicht definierten Personen erstellt Perl den Hash, der enthält dann aber undef als Wert! AutoVivocation heißt das. print "Der Name von Rapsolody ist ", $personen{'Rapsolody'}->{Name}, "\n";
1 2
my $person={Alter=>25, Name=>'Peter', Größe=>172}; print $person->{Alter}."\n"
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
package Person; sub new { my $class=shift; my %opts=@_; my $self={}; $self->{$_}=$opts{$_} for( qw(Alter Name Größe) ) } sub _attr { my $self=shift; my $attr=shift; $self->{$attr}=shift if(@_); return $self->{$attr}; } sub Alter{ shift->_attr('Alter',@_) } sub Name{ shift->_attr('Name',@_) } sub Groesse{ shift->_attr('Groesse',@_) }
1 2
my $person=Person->new(Alter=>25, Name=>'Peter', Groesse=>172); print $person->Alter();
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
package Person; use Moose; has 'Name' => ( is => 'rw', isa => 'Str', ); has 'Groesse' => ( is => 'rw', isa => 'Num', ); has 'Alter' => ( is => 'rw', isa => 'Num', ); no Moose; __PACKAGE__->meta->make_immutable;
%hash = ( 'key1', 'value1', 'key2', 'value2', 'key3', 'value3' );
1 2 3 4 5
%person = ('Person1'=>{ 'Alter'=>10, 'Name'=>Hans} 'Person2'=>{ . . . )
my %person;
2011-01-07T13:26:41 MampfgnomCode (perl): (dl )1 2 3 4 5%person = ('Person1'=>{ 'Alter'=>10, 'Name'=>Hans} 'Person2'=>{ . . . )
1 2 3 4 5
%person = ('Person1'=>{ 'Alter'=>10, 'Name'=>Hans}, 'Person2'=>{ . . . )
1 2 3 4 5 6 7
#!/usr/bin/perl -w use strict; use warnings; my (@test,%test); $test[99999999] = defined; # das dauert tierisch lange $test{99999999} = defined; # das dauert nicht so lange
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
my @personen = ( { Name => "Hans", Alter => 10, }, { Name => "Gretel", Alter => 9, }, ); # Und neue Personen hinzufügen: push @personen, { Name => "Hexe", Alter => 99 }; # Die zweite Person: print "Name: $personen[1]{Name}, Alter: $personen[1]{Alter}\n"; # Ganze Struktur ausgeben: use Data::Dumper; print Dumper \@personen;