[問題] 串列問題

看板Perl作者 (撫星)時間14年前 (2011/03/13 20:32), 編輯推噓1(103)
留言4則, 1人參與, 最新討論串1/3 (看更多)
我是Perl新手 有程式基礎 對串列有個小問題.... 串列給定可以這樣寫: @ary = (1,2,3); 或 @ary = (1..10); 或 @ary = @seq; 而foreach這樣用: foreach(1,2,3){} 或 foreach(1..10){} 或 foreach(@seq){} 這樣有個小問題是 (1,2,3)才能代表串列 那為什麼foreach沒有兩層括弧? 如果串列的括弧可以被省略 那為什麼 @ary = 1,2,3; 這樣不行? 我知道Perl是個方便為上的語言, 但為求方便記憶, 想說還是問問看。 請問我該怎麼理解呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.251.167.15

03/14 00:16, , 1F
foreach 是把 () 內所有元素一個一個抓出來,所以 1,2,3
03/14 00:16, 1F

03/14 00:17, , 2F
能當成串列,但 @ary = 1,2,3; 只有 1 會被傳入 @ary,後面
03/14 00:17, 2F

03/14 00:18, , 3F
2 跟 3 因為沒被傳入變數內,就直接掰掰了
03/14 00:18, 3F

03/14 00:20, , 4F
@ary=1,2,3; 會有點像 @ary=1;$_=2;$_=3;$_="";
03/14 00:20, 4F
文章代碼(AID): #1DVBbFkf (Perl)
討論串 (同標題文章)
以下文章回應了本文
2
3
完整討論串 (本文為第 1 之 3 篇):
2
3
文章代碼(AID): #1DVBbFkf (Perl)