重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

$abc[1]は理解できるのですが、
@abc[1]がわかりません、
宜しくお願いします。

A 回答 (2件)

> 「配列スライス」はどんな場合使うのですか


うーん、私はあまり配列スライスは使わないのでよい例が浮かびませんが、、^^;
例えば、検索を行うCGIなどでページ分割を行う時、@data に検索結果全件が入っているとして、
  my $lines = 50;           # 1ページに表示する件数
  my $page = $FORM{page} - 1;  # 表示するページ
  @data = @data[$page*$lines .. ($page+1)*$lines-1];
みたいな感じで、表示する部分を抽出するとかかな?
    • good
    • 0

$abc[1] は「配列要素」ですよね。


@abc[1] は「配列スライス」と呼ばれるものです。

例えば
  @abc = ('A', 'B', 'C', 'D');
の時、
  @def = @abc[2,3,0];
とすると、@def の中身は
  ('C', 'D', 'A')
となります。

また、左辺に置くこともでき、
  @abc[1,3] = ('X', 'Y');
とすると、@abc の中身は
  ('A', 'X', 'C', 'Y')
となります。

@abc[1] では取り出す要素が1つだけなので、$abc[1] とやっていることは大して変わりません。
が、そもそもの使用目的が違いますので、要素を1つだけ取り出す場合は $abc[1] とした方がよいでしょう。

この回答への補足

回答有難うございます、
「配列スライス」はどんな場合使うのですか

補足日時:2003/03/16 06:04
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!