Elixir-変数
変数は、プログラムが操作できる名前付きストレージを提供します。Elixirの各変数には特定のタイプがあり、変数のメモリのサイズとレイアウトを決定します。そのメモリ内に保存できる値の範囲。変数に適用できる一連の操作。
変数の種類
Elixirは、次の基本的なタイプの変数をサポートしています。
整数
これらは整数に使用されます。サイズは、32ビットアーキテクチャでは32ビット、64ビットアーキテクチャでは64ビットです。整数は常にエリクサーで署名されます。整数のサイズが制限を超えて拡大し始めると、elixirはそれをBig Integerに変換します。この整数は、3〜nワードの範囲のメモリを占有します。
フロート
フロートのエリクサーは64ビット精度です。また、メモリの観点からは整数のようなものです。フロートを定義するときは、指数表記を使用できます。
ブール値
それらは、真または偽の2つの値を取ることができます。
文字列
文字列は、エリクサーでutf-8エンコードされます。それらには、文字列を操作するための多くの機能をプログラマーに提供する文字列モジュールがあります。
匿名関数/ラムダ
これらは、定義して変数に割り当てることができる関数であり、この関数を使用してこの関数を呼び出すことができます。
コレクション
Elixirには多くのコレクションタイプがあります。それらのいくつかは、リスト、タプル、マップ、バイナリなどです。これらについては、以降の章で説明します。
変数宣言
変数宣言は、変数のストレージを作成する場所と量をインタープリターに指示します。Elixirでは、変数を宣言するだけでは不十分です。変数の宣言と値の割り当てを同時に行う必要があります。たとえば、lifeという名前の変数を作成し、それに値42を割り当てるには、次のようにします。
life = 42
これにより、変数の寿命が値42にバインドされます。この変数に新しい値を再割り当てする場合は、上記と同じ構文を使用してこれを行うことができます。
life = "Hello world"
変数の命名
ネーミング変数は snake_caseElixirの規則、つまり、すべての変数は小文字で始まり、0個以上の文字(大文字と小文字の両方)が続き、最後にオプションの「?」が続く必要があります。または '!'。
変数名は先頭にアンダースコアを付けることもできますが、変数を無視する場合にのみ使用する必要があります。つまり、その変数は再度使用されることはありませんが、何かに割り当てる必要があります。
変数の印刷
インタラクティブシェルでは、変数名を入力するだけで変数が出力されます。たとえば、変数を作成する場合-
life = 42
シェルに「life」と入力すると、次のように出力されます。
42
ただし、変数をコンソールに出力する場合(ファイルから外部スクリプトを実行する場合)、変数をへの入力として提供する必要があります。 IO.puts 関数-
life = 42
IO.puts life
または
life = 42
IO.puts(life)
これにより、次の出力が得られます-
42