English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Erlang データ型

どのプログラミング言語でも、さまざまなタイプの情報を保存するために複数の変数を使用する必要があります。変数は、値を保存するための保留されたメモリ位置です。これは、変数を作成する際に、その変数に関連付けられた値を保存するためのメモリ空間を確保することを意味します。

さまざまなデータ型の情報、例えば文字列、文字、ワイド文字、整数、浮点数、ボルンなどを保存したいかもしれません。オペレーティングシステムは、変数のデータ型に応じてメモリを割り当て、そのメモリに保存できる内容を決定します。

内蔵データ型

Erlangは、さまざまな内蔵データ型を提供しています。以下は、Erlangで定義されているデータ型のリストです-

  • Number(数字)−Erlangでは、整数と浮点数の2種類の数字リテラルがあります。

  • Atomアトム)−アトムはアルファベットで、名前を持つ定数です。アトムが小文字でない場合や、アルファベット数字、アンダースコア(_)、@以外の文字を含む場合、それをシングルクォート(')で括ります。

  • Booleanボルン) − Erlangのボルンデータ型は、trueとfalseという2つの保留されたアトムです。

  • ビット文字列 (ビット文字列)−ビット文字列を使用して未定型のメモリ領域を格納します。

  • タプルタプル)−タプルは固定数の項を持つ複合データタイプです。タプルの各項は要素と呼ばれます。要素の数はタプルのサイズと呼ばれます。

  • Map(マップ)−マップは可変数のキーを持つ-値に関連付けられた複合データタイプです。マップの各キー値の関連付けは、対応するペアと呼ばれます。ペアのキー部分と値部分は要素と呼ばれます。対応するペアの数はマップのサイズと呼ばれます。

  • リスト(リスト)−リストは可変数の項を持つ複合データタイプです。リストの各項は要素と呼ばれます。要素の数はリストの長さと呼ばれます。

注意−上記のリストのどこにもStringタイプが見られません。これは、Erlangで特別に定義された文字列データタイプがないためです。しかし、次の章で文字列の使用方法を見てみましょう。

以下は、各データタイプの使用方法の例です。同様に、各データタイプは後の章で詳細に説明されます。これは、上記のデータタイプに慣れるための簡単な説明です。

数字

以下のプログラムは、数字データタイプの使用方法の例を示しています。このプログラムは以下を示しています。2整数の加法。

-module(helloworld).
-export([start/0]).
start() ->
   io:fwrite("~w",[1+1]).

上記のプログラムの出力は以下の通りです

2

アトム

アトムは小文字で始まり、小文字および大文字、数字、アンダースコアを含むことができます。(_)および「at」シンボル(@)。また、原子は単引号で括ることができます。

以下のプログラムは、atomデータタイプの使用方法の例を示しています。このプログラムでは、atomとしてatomという名前のものを作成しています。1のアトム。

-module(helloworld).
-export([start/0]).
start() ->
   io:fwrite(atom1).

上記のプログラムの出力は以下の通りです

atom1

ブール型

以下のプログラムは、ブールデータタイプの使用方法の例を示しています。この例では、以下のブール型を使用しています。2整数の間で比較し、結果のブール値をコンソールに出力します。


-module(helloworld).
-export([start/0]).
start() ->
   io:fwrite(2 =< 3).

上記のプログラムの出力は以下の通りです-

Output

true

ビット文字列

以下のプログラムは、ビット文字列データタイプの使用方法の例を示しています。このプログラムは、以下のビット文字列を定義しています。2ビットで構成されたビット文字列。binary_to_listはErlangで定義されたビルトイン関数であり、バイナリ文字列をリストに変換することができます。

-module(helloworld).
-export([start/0]).
start() ->
   Bin1 10,20>>,
   X = binary_to_list(Bin1),
   io:fwrite("~w",[X]).

上記のプログラムの出力は以下の通りです:

[10,20]

タプル

以下のプログラムは、Tupleデータタイプの使用方法の例を示しています。

ここでは、以下の具有3個項のタプルP。 tuple_sizeはErlangで定義されたビルトイン関数であり、タプルのサイズを決定するために使用できます。

-module(helloworld). 
-export([start/0]). 
start() -> 
   P = {john,24{june,25}} , 
   io:fwrite("~w",[tuple_size(P)]).

上記のプログラムの出力は以下の通りです-

3

マップ

以下のプログラムは、Mapデータ型を使用する例を示しています。

ここでは、以下の定義を行いました。2マップのMap M1。 map_sizeは、Erlangで定義された組み込みの関数で、マップのサイズを決定するために使用できます。

-module(helloworld). 
-export([start/0]). 
start() -> 
   M1 = #{name=>john,age=>25}, 
   io:fwrite("~w",[map_size(M1]).

上記のプログラムの出力は以下の通りです

2

リスト

以下のプログラムは、Listデータ型を使用する例を示しています。

ここでは、以下の定義を行いました。リスト L、それには3プロジェクト。Erlangで定義された組み込みのlength関数は、リストのサイズを決定するために使用できます。

-module(helloworld). 
-export([start/0]). 
start() -> 
   L = [10,20,30] , 
   io:fwrite("~w",[length(L)]).

上記のプログラムの出力は以下の通りです

3