リストからarrayモジュールへの変換関数。
■from_list/1
【構文】
from_list(List :: list()) -> array()
→from_list(List,undefined)と等しい。
【実行例】
18> L0 = [1,2,3,4].
[1,2,3,4]
19> array:from_list(L0).
{array,4,10,undefined,
{1,2,3,4,undefined,undefined,undefined,undefined,undefined,
undefined}}
■from_list/2
【構文】
from_list(List :: list(), Default :: term()) -> array()
→リストから拡張可能arrayモジュールへ変換します。第2引数のDefaultはarrayモジュールの初期化されていない部分の初期値に使われる。第1引数のListがリストじゃなければ、badargエラーを返す。
【実行例】
18> L0 = [1,2,3,4].
[1,2,3,4]
23> A1= array:from_list(L0,0).
{array,4,10,0,{1,2,3,4,0,0,0,0,0,0}}
■from_list/1 と from_list/2 の違い
[1,2,3,4]
23> A1= array:from_list(L0,0).
{array,4,10,0,{1,2,3,4,0,0,0,0,0,0}}
■from_list/1 と from_list/2 の違い
初期値がundefinedかオプションのものか。
■その他
見てわかるとおり、初期Maxサイズは10みたい。
メモ:
実はfoldl/3の実行例を作成しようとしていたんだけど、まだちょっとよくわからないのと、いい例が見つからない。
0 件のコメント:
コメントを投稿