歷史文章列表

each

2013-08-24 01:34
5.4 each 就像在陣列當中,你可以使用foreach這樣的迴圈來找到陣列中的每一個值,當然我們也經常需要在雜湊中進行類似的工作,我們希望可以在雜湊中能一次取 出所有的鍵,值。所以你必須仰賴類似foreach的工具來幫助你,那就是each函數。例如你可以利用下面的寫法讀出剛剛我們所建立起來的雜湊:   while (my ($key, $value) = each (%hash)) {   # 取出雜湊中的每一對鍵值,並且分別放入$key, $value print "$key =>...

hash

2013-08-24 01:26
my %hash = qw/1 one 2 two 3 three/; 這樣的賦值方式看起來跟處理陣列時候的方式非常接近,我們利用qw//來指定一個串列,並且將這個串列賦值給雜湊。這時候,Perl會按照串列的順序,分別為【鍵】,【值】,並且賦予雜湊。所以在這個例子中,所得到的結果就跟我們這麼寫是一樣的:   $hash{1} = 'one'; $hash{2} = 'two'; $hash{3} =...

四捨五入

2013-08-24 01:24
my $a = 10.335444; print sprintf("%.2f", $a);

++/--

2013-08-23 23:18
my $i = 1; while ($i <= 10) { print ++$i."\n";   # 印出 2...11 } my $j = 1; while ($j <= 10) { print $j++."\n";   # 印出 1...10

for

2013-08-23 22:52
my $result = 1; for (my $num = 1; $num <= 10; $num = $num + 1) { $result *= $num; }   for my $num (1...10) { # 這就是表示$num從1到10 print $num; } 這其實可以寫成: for (1...10) { # $_ 經常被拿來作為迴圈的預設變數 print $_; } 更簡化的寫法: print for (1...10);

while

2013-08-23 22:49
while (1) { # 在這裡,程式會得到永遠的真值 print "這是無限迴圈"; } 第三,在這裡,你還是可以讓只有單一敘述的while迴圈利用倒裝句達成: 我們假設你完全知道剛剛的程式會發生甚麼事,而那正是你所希望達成的,那麼我們就可以來改寫一下,讓他變得更簡潔:   print "這是無限迴圈" while (1);  

if

2013-08-23 22:45
if ($num < 5) { $num++; } 這樣的寫法確實非常工整,可是對於惜字如金的Perl程式員來說,這樣的寫法似乎非常不經濟。於是一種簡單的模式被大量使用:   $num++ if ($num < 5);

qq

2013-08-23 17:17
print "\$ 用來提示純量變數, \@ 則是陣列,還有 \"\n"; print qq/\$ 用來提示純量變數, \@ 則是陣列,還有 \"\n/; print qq|\$ 用來提示純量變數, \@ 則是陣列,還有 \"\n|; 結果看來都是一樣的 $ 用來提示純量變數, @ 則是陣列,還有 "

map

2013-08-23 17:16
my @array = map { sqrt($_)*10 } qw/45 33 8 75 21 15 38 69 46/;

pop/push

2013-08-23 17:15
my @array = qw{first second third}; push @array, 'fourth'; print $#array;   # 這裡印出來的是3,表示'fortuh'已經被放入陣列 pop @array; print $#array;   # 至於pop,則是把元素從陣列中取出  
項目: 81 - 90 之 152
<< 7 | 8 | 9 | 10 | 11 >>