0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Ruby】 コロン:の使い方3選

Last updated at Posted at 2023-07-26

参考:ちゃんるび!さんのudemy動画がとても分かりやすかったです
https://www.udemy.com/course/ruby-on-rails-c/learn/lecture/24901088#reviews

シンボル ex) :name, :sbl

  • (誤解を恐れずにいうと)Stringの上位互換
  • 最初にがあったらシンボルと思ってよし
  • 不変で重複がないため、一意の識別子として頻繁に使用される

シンボルをキーとしたハッシュ

定義
※どちらもまったく同じハッシュが作成される

hash = { :id => 1, :name =>  'saku' }
hash = { id: 1, name: 'saku' } #(省略系)

参照

# 'saku' を取り出す)
hash[ :name ]

ハッシュは Key の重複を許さないため、同じく重複がないシンボルと相性がよい。
そのためハッシュの Key としてシンボルが多様される。
シンボルのほうがメモリ効率が良いが、パフォーマンスを気にするレベルの差ではないため、Strig" "表現のほうが可読性がよい等の理由があるときは、Stringを使ってもまったく問題ない。

メソッドのキーワード引数

#定義
def sum_number( arg1, arg2:)
  arg1 + arg2
end

#呼び出し
sum_number 3, arg2: 4
==> 4
  • 引数に見出し(キーワード)をつけることができる
  • 引数が多い場合にキーワードを指定することで可読性が向上する。
    キーワード引数は順番を問わないのも便利
  • 通常引数とキーワード引数は混在できる
    その場合は、通常引数はキーワード引数より前に定義される必要がある
  • キーワード引数がある場合は、呼び出し時に必ずキーワード付きで指定する必要がある
#OK
sum_number 3, arg2: 4

#NG
sum_number 3, 4
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?