iT邦幫忙

2023 iThome 鐵人賽

DAY 19
0
自我挑戰組

自我挑戰Ruby系列 第 19

Day 19 - 雜湊

  • 分享至 

  • xImage
  •  

什麼是雜湊

雜湊主要是一種資料結構,而是藉由key跟value作為組合;

保存了key(鍵)的物件,每個key內會對應到一個值(value)。

主要以大括號包住。

寫法

(1) 箭頭式:

car = { :type => 'A', :color => 'Blue' }

(2) 類似類似JSON格式:

car = { type: 'A', color: 'Blue' }

但無論是哪兩個,其實他們是一樣的東西。

Key

在上述的例子裡,type和color是Hash裡面的key。

在Hash內想取得key的資料,我們會藉由 Hash[:key] 的形式,例如:

puts car[:type] 可以得到 A

puts car[:color] 可以得到 Blue

要注意的是key的形式要使用:key來表示,而不能使用"key",例如:

:type 而不是 "type"

:color 而不是 "color"

究竟我們該如何得知所有的keys呢?我們可以藉由:

puts car.keys 得到 type 以及color

Value

在上述的例子裡,A和Blue是Hash裡面的value。

究竟我們該如何得知所有的values呢?

我們可以藉由:

puts car.values 得到 A 以及Blue

Day 19 結語

今天主要介紹雜湊的形式,以及裡面的鍵與值,

用怎樣的方式可以建立雜湊,以及用什麼方式可以得到鍵與值,

最主要字串的形式和符號的形式是有所不同的,

若使用puts car["type"] (字串的形式)會得到nil 的結果,

而只能用puts car[:type] (符號的形式),什麼是符號呢?

我會在下一篇來說明。


上一篇
Day 18 - 範圍
下一篇
Day 20 - 符號
系列文
自我挑戰Ruby30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言