Szukaj…


Składnia

  • [głowa | tail] = [1, 2, 3, true] # można użyć dopasowania wzorca do rozbicia przeciwnych komórek. To przypisuje głowę do 1, a ogon do [2, 3, true]

  • % {d: val} =% {d: 1, e: true} # to przypisuje val do 1; żadna zmienna d nie jest tworzona, ponieważ d na lhs jest tak naprawdę tylko symbolem używanym do utworzenia wzoru% {: d => _} (zauważ, że notacja rakietowa hash pozwala mieć nie-symbole jako klucze do map tak jak w rubinie)

Uwagi

Jeśli chodzi o strukturę danych, oto kilka krótkich uwag.

Jeśli potrzebujesz struktury danych tablicowych, jeśli zamierzasz dużo pisać, użyj list. Jeśli zamiast tego będziesz dużo czytać, powinieneś użyć krotek.

Jeśli chodzi o mapy, to po prostu sposób, w jaki robisz kluczowe magazyny wartości.

Listy

a = [1, 2, 3, true]

Pamiętaj, że są one przechowywane w pamięci jako listy połączone. Jest to seria komórek przeciw, w których nagłówek (List.hd / 1) jest wartością pierwszego elementu listy, a ogon (List.tail / 1) to wartość reszty listy.

List.hd(a) = 1
List.tl(a) = [2, 3, true]

Krotki

b = {:ok, 1, 2}

Krotki są odpowiednikami tablic w innych językach. Są one przechowywane w pamięci w sposób ciągły.



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow