到Ruby世界不可不認識:雜湊
Hash 有以下的幾個特色:
- keys 和 values 可以由任意 object 組成
- keys 的值不可重複
- values,是對應 keys 的物件,值可以重複
最容易想像的資料型態就像學生的成績紀錄,如同下面的表示,name 和 score 都是這個 hash 的 key,可以想像成一個而主要的標題,分別對應的內容就是’Sean’, 100 這兩個值。
1 | student_score = { name: 'Sean', score: 100 } |
表示方法
- 舊式 (符號箭頭)
1 | profile = { :name => 'Sean', :age => 20 } |
- 新式 (Ruby 1.9 之後的新式寫法)
1 | profile = { name: 'Sean', age: 20 } |
存取資料內容
拿取資料
- 寫過別的程式語言可能會直覺想用字串(“”)的方式拿取,但是沒辦法,記得要用:符號來拿喔!!
- 不過 rails 環境中有特別擴充可以用字串方式去拿
1 | profile = { name: 'Sean', age: 20 } |
存入資料
- 用符號的方式並且指定 value 給 hash
1 | character = { name: 'warrier', age: 20 } |
長度
可以用 length 或 size 找到內部有幾組 key 和 value
1 | profile = {name: "Sean", age: 25, power:100, ability: "Ruby"} |
參考資料:
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 Sean's Blog!
評論
GiscusDisqus