iT邦幫忙

2023 iThome 鐵人賽

DAY 14
0
自我挑戰組

從零開始的 clojure系列 第 14

Day 14 Clojure- Data Structures - Vectors

  • 分享至 

  • xImage
  •  

前言

大家好,我是對於 Clojure 一無所知的菜鳥小白工程師。

今天要來學習 Clojure 資料型態中的向量 Vectors

try Clojure here: https://qa-mktg.codingrooms.com/compiler/clojure/

Vectors

向量(Vectors)類似於陣列(Arrays),基本上上它們是一個 0 索引( 0-indexed ,索引值編排從0 開始)的集合。例如,以下是一個向量的例子:

[3 2 1]

在這裡,我們使用 get 函數取得向量的第 0 個元素:

(get [3 2 1] 0)
; => 3

這裡是另一個按索引取得元素的示例:

(get ["a" {:name "Pugsley Winterbottom"} "c"] 1)
; => {:name "Pugsley Winterbottom"}

我們可以看到向量元素可以是任何類型,並我們可以混合不同類型的元素。另外,我們在查找映射中的值時使用 get 函數,也可以用於查找向量。

我們可以使用 vector 函數創建向量:

(vector "creepy" "full" "moon")
; => ["creepy" "full" "moon"]

我們可以使用 conj 函數,將元素添加到向量中:

(conj [1 2 3] 4)
; => [1 2 3 4]

小結

今天我們學習了向量(Vectors)的資料結構。它類似於陣列,可以放入不同類型的元素,並且使用索引值來查找。

在 Clojure 中,向量不是存儲序列(sequences)的唯一方式。

在下一章節中,我們將學習列表( Lists)。

參考文章


上一篇
Day 13 Clojure- Data Structures - Keywords
下一篇
Day 15 Clojure- Data Structures - Lists
系列文
從零開始的 clojure23
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言