return演算子について ver1

return演算子について

use strict;
use warnings;

my @names = qw/fred barney betty dino wilma pebbles bamm-bamm /;
my $result = &which_element_is("betty", @names);

print $result;

# @fruits = qw/apple grape);
# my($a, $b) = @fruits;
# my($a, $b) = qw/apple grape/;
# $fruits[0]; # apple
#
# @_      = qw("betty", @names);
# my($what, @array) = @_;
# $_[0]; #=> "betty"
# $_[1]; #=> @names

# 引数で渡された値が格納されているインデックスを返す。
sub which_element_is{
  my($what, @array) = @_;
  foreach(0..$#array){
    if($what eq $array[$_]){
      return $_; # 一致したら処理を打ち切り、値を返す。
    }
  }
  -1;  # 見つからなかったら、-1を返す。
}

以下出力結果となります。

2