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