私はPerlの学習を始めたばかりで、次のコード ブロックの結果に悩まされていることに気付きました。
@x = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
foreach (@x) {
$x = pop (@x) ;
$y = shift (@x);
print ("$x $y \n");
}
出力は次のとおりです。
10 1
9 2
8 3
7 4
私は別の行を期待していました: 6 5
. なんでそんなセリフないの?を出力する反復の後、7 4
配列に残っている要素の数は、既に完了した反復の数と等しくなり、Perl に関する限り、ループが完了したためですか?