Perlの変数
変数データをメモリに格納され、作成された変数は、メモリ上のスペースを開きます。
インタプリタは、メモリ内の変数のメモリ空間の種類に応じて決定されますので、あなたは、整数、浮動小数点、文字列、およびその他の変数などの異なるデータタイプを、割り当てることができます。
スカラー、配列、ハッシュ:前の章では、Perlの三つの基本的なデータ型を導入する必要があります。
- $スカラ$ $ bとして開始する2つのスカラーです。 @など@a @bなどのアレイスタートは、二つの配列です。 ハッシュ%を起動し、%%bは2つのハッシュです。
独立したスペースを設定するコマンドの種類ごとにPerlの変数なので、変数の種類が同じ名前を使用することができます、あなたは競合を心配する必要はありません。 例えば、$ fooと@fooは、二つの異なる変数です。
変数を作成します。
変数は、変数の代入後、インタプリタは自動的にスペースのタイプに一致するように割り当てられます、型を明示的に宣言する必要はありません。
変数は代入する等号(=)を使用します。
私たちは、プログラムの種類を強制するために必要なすべての変数を宣言するために厳格なステートメントを使用し使用することができます。
左側には、次のような例であり、右の値変数です。
$age = 25; # 整型 $name = "w3big"; # 字符串 $salary = 1445.50; # 浮点数
それぞれ$年齢 、$名 と$給与変数に割り当てられたコード25の上方には、「w3big」と1445.50。
次に、配列とハッシュの使用が表示されます。
スカラー変数
スカラデータは、単一のユニットです。 データは、というように、整数、浮動小数点数、文字、文字列、段落、することができます。 シンプルなそれは何もすることができます。 ここでは単純なスカラー・アプリケーションは、次のとおりです。
#!/usr/bin/perl $age = 25; # 整型 $name = "w3big"; # 字符串 $salary = 1445.50; # 浮点数 print "Age = $age\n"; print "Name = $name\n"; print "Salary = $salary\n";
上記プログラム実行出力は、次のとおりです。
Age = 25 Name = w3big Salary = 1445.5
配列変数
アレイは、順序付けられたスカラー値を格納するために使用される変数です。
@配列が開始されます。
配列変数にアクセスするには、ドル記号($)+変数名を使用し、アクセスへのインデックスを指定することができ、以下に示します。
#!/usr/bin/perl @ages = (25, 30, 40); @names = ("google", "w3big", "taobao"); print "\$ages[0] = $ages[0]\n"; print "\$ages[1] = $ages[1]\n"; print "\$ages[2] = $ages[2]\n"; print "\$names[0] = $names[0]\n"; print "\$names[1] = $names[1]\n"; print "\$names[2] = $names[2]\n";
上記プログラム実行出力は、次のとおりです。
$ages[0] = 25 $ages[1] = 30 $ages[2] = 40 $names[0] = google $names[1] = w3big $names[2] = taobao
文字$出力するようにプログラムする前に、我々は、$マークのエスケープ文字(\)を使用します。
ハッシュ変数
ハッシュはキー/値のペアです。
%開始をハッシュ。
あなたは、ハッシュ値にアクセスしたい場合は、$ + {キー}形式の訪問を使用することができます。
#!/usr/bin/perl %data = ('google', 45, 'w3big', 30, 'taobao', 40); print "\$data{'google'} = $data{'google'}\n"; print "\$data{'w3big'} = $data{'w3big'}\n"; print "\$data{'taobao'} = $data{'taobao'}\n";
上記プログラム実行出力は、次のとおりです。
$data{'google'} = 45 $data{'w3big'} = 30 $data{'taobao'} = 40
変数コンテキスト
いわゆるコンテキスト:表現の場所を指します。
コンテキストが、それはスカラーコンテキストスカラーである左の等号の種類可変左手側によって決定され、左の等号は、それがリストコンテキストで、リストです。
Perlインタプリタは、変数の型を決定するために、コンテキストに基づいて。 例としては、次のとおりです:
#!/usr/bin/perl @names = ('google', 'w3big', 'taobao'); @copy = @names; # 复制数组 $size = @names; # 数组赋值给标量,返回数组元素个数 print "名字为 : @copy\n"; print "名字数为 : $size\n";
上記プログラム実行出力は、次のとおりです。
名字为 : google w3big taobao 名字数为 : 3
@namesコードは、それが二つの異なるコンテキストで適用され、配列です。 別の配列への最初のコピーは、それが配列のすべての要素を出力します。 第二は、配列の要素数を返すスカラー配列に割り当てられます。
ここでは異なる種々の状況は以下のとおりです。
いいえ。 | コンテキストと説明 |
---|---|
1 | スカラ- 右のコンテキストスカラコンピューティングにおけるスカラー変数への代入、 |
2 | リスト- 計算されたリストの右側の文脈において、配列やハッシュに割り当てられています。 |
3 | イスタンブール- ブールコンテキストは単純な式は、それが真であるか偽であるかどうかを評価しています。 |
4 | ボイド- この関係は、値が、一般的に、戻り値を必要としないものの内容を返す必要はありません。 |
5 | 補間- これは引用符のコンテキストで発生します。 |