るりまサーチ

最速Rubyリファレンスマニュアル検索!
1656件ヒット [1-100件を表示] (0.077秒)
トップページ > クエリ:_builtin[x] > クエリ:p[x] > クエリ:Symbol[x]

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

ライブラリ

クラス

モジュール

オブジェクト

キーワード

検索結果

<< 1 2 3 ... > >>

Symbol (46054.0)

シンボルを表すクラス。シンボルは任意の文字列と一対一に対応するオブジェクトです。

...です。

シンボルオブジェクトは以下のようなリテラルで得られます。

:symbol
:'symbol'
%s!symbol! # %記法

生成されたシンボルの一覧は Symbol.all_symbols で得られます。
一番目のリテラルでシンボルを表す場合、`:' の後に
...
...また、文字列と違い、immutable (変更不可)であり、同値ならば必ず同一です。

p
"abc" == "abc" #=> true
p
"abc".equal?("abc") #=> false
p
:abc == :abc #=> true
p
:abc.equal?(:abc) #=> true ←同値ならば同一

==== 用途
実用面では、シンボルは文...
...配がない

大抵のメソッドはシンボルの代わりに文字列を引数として渡すこともできるようになっています。

Symbol
クラスのメソッドには、String クラスのメソッドと同名で似た働きをするものもあります。

==== GC

内部的に...

Symbol.all_symbols -> [Symbol] (35237.0)

定義済みの全てのシンボルオブジェクトの配列を返します。

...定義済みの全てのシンボルオブジェクトの配列を返します。

p
Symbol.all_symbols #=> [:RUBY_PLATFORM, :RUBY_VERSION, ...]

リテラルで表記したシンボルのうち、コンパイル時に値が決まるものはその時に生成されます。
それ以外の式...
...)

def number
'make_3'
end

p
Symbol.all_symbols.select{|sym|sym.to_s.include? 'make'}
#=> [:make_1, :make_2]

re = #確実に生成されるように代入操作を行う
:make_1,
:'make_2',
:"#{number}",
'make_4'.intern

p
Symbol.all_symbols.select{|sym|sym.to_s.include? '...

Symbol#swapcase -> Symbol (35213.0)

'A' から 'Z' までのアルファベット大文字を小文字に、'a' から 'z' までの アルファベット小文字を大文字に変更したシンボルを返します。

...ファベット大文字を小文字に、'a' から 'z' までの
アルファベット小文字を大文字に変更したシンボルを返します。

(self.to_s.swapcase.intern と同じです。)

p
:ABCxyz.swapcase # => :abcXYZ
p
:Access.swapcase # => :aCCESS

@see String#swapcase...

Symbol#swapcase(*options) -> Symbol (35213.0)

'A' から 'Z' までのアルファベット大文字を小文字に、'a' から 'z' までの アルファベット小文字を大文字に変更したシンボルを返します。

...ファベット大文字を小文字に、'a' から 'z' までの
アルファベット小文字を大文字に変更したシンボルを返します。

(self.to_s.swapcase.intern と同じです。)

p
:ABCxyz.swapcase # => :abcXYZ
p
:Access.swapcase # => :aCCESS

@see String#swapcase...

Symbol#capitalize -> Symbol (35201.0)

シンボルに対応する文字列の先頭の文字を大文字に、残りを小文字に変更した シンボルを返します。

...に、残りを小文字に変更した
シンボルを返します。

(self.to_s.capitalize.intern と同じです。)

:foobar.capitalize #=> :Foobar
:fooBar.capitalize #=> :Foobar
:FOOBAR.capitalize #=> :Foobar
:"foobar--".capitalize # => "Foobar--"

@see String#capitalize...

絞り込み条件を変える

Symbol#capitalize(*options) -> Symbol (35201.0)

シンボルに対応する文字列の先頭の文字を大文字に、残りを小文字に変更した シンボルを返します。

...に、残りを小文字に変更した
シンボルを返します。

(self.to_s.capitalize.intern と同じです。)

:foobar.capitalize #=> :Foobar
:fooBar.capitalize #=> :Foobar
:FOOBAR.capitalize #=> :Foobar
:"foobar--".capitalize # => "Foobar--"

@see String#capitalize...

Symbol#upcase -> Symbol (35201.0)

小文字を大文字に変換したシンボルを返します。

...小文字を大文字に変換したシンボルを返します。

(self.to_s.upcase.intern と同じです。)

:foo.upcase #=> :FOO

@see String#upcase...

Symbol#upcase(*options) -> Symbol (35201.0)

小文字を大文字に変換したシンボルを返します。

...小文字を大文字に変換したシンボルを返します。

(self.to_s.upcase.intern と同じです。)

:foo.upcase #=> :FOO

@see String#upcase...

Symbol#to_proc -> Proc (35200.0)

self に対応する Proc オブジェクトを返します。

...self に対応する Proc オブジェクトを返します。

生成される Proc オブジェクトを呼びだす(Proc#call)と、
P
roc#callの第一引数をレシーバとして、 self という名前のメソッドを
残りの引数を渡して呼びだします。


//emlist[明示的に...
...呼ぶ例][ruby]{
:to_i.to_proc["ff", 16] # => 255 ← "ff".to_i(16)と同じ
//}

//emlist[暗黙に呼ばれる例][ruby]{
# メソッドに & とともにシンボルを渡すと
# to_proc が呼ばれて Proc 化され、
# それがブロックとして渡される。
(1..3).collect(&:to_s) #...
...=> ["1", "2", "3"]
(1..3).select(&:odd?) # => [1, 3]
//}

@see d:spec/call#block...
...対応する Proc オブジェクトを返します。

生成される Proc オブジェクトを呼びだす(Proc#call)と、
P
roc#callの第一引数をレシーバとして、 self という名前のメソッドを
残りの引数を渡して呼びだします。

生成される Proc オブジ...
...ruby]{
:object_id.to_proc.lambda? # => true
//}

//emlist[明示的に呼ぶ例][ruby]{
:to_i.to_proc["ff", 16] # => 255 ← "ff".to_i(16)と同じ
//}

//emlist[暗黙に呼ばれる例][ruby]{
# メソッドに & とともにシンボルを渡すと
# to_proc が呼ばれて Proc 化され、
#...
...それがブロックとして渡される。
(1..3).collect(&:to_s) # => ["1", "2", "3"]
(1..3).select(&:odd?) # => [1, 3]
//}

@see d:spec/call#block...

Symbol#casecmp(other) -> -1 | 0 | 1 | nil (35134.0)

Symbol#<=> と同様にシンボルに対応する文字列の順序を比較しますが、 アルファベットの大文字小文字の違いを無視します。

...
Symbol
#<=> と同様にシンボルに対応する文字列の順序を比較しますが、
アルファベットの大文字小文字の違いを無視します。


@param other 比較対象のシンボルを指定します。

//emlist[][ruby]{
:aBcDeF.casecmp(:abcde) #=> 1
:aBcDeF.casecmp(...
...0
:aBcDeF.casecmp(:abcdefg) #=> -1
:abcdef.casecmp(:ABCDEF) #=> 0
:"\u{e4 f6 fc}".casecmp(:"\u{c4 d6 dc}") #=> 1
//}

other がシンボルではない場合や、文字列のエンコーディングが非互換の場合は、nil を返します。

//emlist[][ruby]{
:foo.casecmp("foo") #=> n...
...il
"\u{e4 f6 fc}".encode("ISO-8859-1").to_sym.casecmp(:"\u{c4 d6 dc}") #=> nil
//}

@see String#casecmp, Symbol#<=>, Symbol#casecmp?...
...
Symbol
#<=> と同様にシンボルに対応する文字列の順序を比較しますが、
アルファベットの大文字小文字の違いを無視します。

Symbol
#casecmp? と違って大文字小文字の違いを無視するのは
Unicode 全体ではなく、A-Z/a-z だけです。

@...
...param other 比較対象のシンボルを指定します。

//emlist[][ruby]{
:aBcDeF.casecmp(:abcde) #=> 1
:aBcDeF.casecmp(:abcdef) #=> 0
:aBcDeF.casecmp(:abcdefg) #=> -1
:abcdef.casecmp(:ABCDEF) #=> 0
:"\u{e4 f6 fc}".casecmp(:"\u{c4 d6 dc}") #=> 1
//}

other がシンボルではな...
...い場合や、文字列のエンコーディングが非互換の場合は、nil を返します。

//emlist[][ruby]{
:foo.casecmp("foo") #=> nil
"\u{e4 f6 fc}".encode("ISO-8859-1").to_sym.casecmp(:"\u{c4 d6 dc}") #=> nil
//}

@see String#casecmp, Symbol#<=>, Symbol#casecmp?...

絞り込み条件を変える

Symbol#casecmp?(other) -> bool | nil (35106.0)

大文字小文字の違いを無視しシンボルを比較します。 シンボルが一致する場合には true を返し、一致しない場合には false を返します。

...を返します。

@param other 比較対象のシンボルを指定します。

//emlist[][ruby]{
:abcdef.casecmp?(:abcde) #=> false
:aBcDeF.casecmp?(:abcdef) #=> true
:abcdef.casecmp?(:abcdefg) #=> false
:abcdef.casecmp?(:ABCDEF) #=> true
:"\u{e4 f6 fc}".casecmp?(:"\u{c4 d6 dc}") #=...
...er がシンボルではない場合や、文字列のエンコーディングが非互換の場合は、nil を返します。

//emlist[][ruby]{
:foo.casecmp?("foo") #=> nil
"\u{e4 f6 fc}".encode("ISO-8859-1").to_sym.casecmp?(:"\u{c4 d6 dc}") #=> nil
//}

@see String#casecmp?, Symbol#casecmp...

Symbol#empty? -> bool (35100.0)

自身が :"" (length が 0 のシンボル)かどうかを返します。

...自身が :"" (length が 0 のシンボル)かどうかを返します。

:"".empty? #=> true
:foo.empty? #=> false

@see String#empty?...

Symbol#inspect -> String (35100.0)

自身を人間に読みやすい文字列にして返します。

...自身を人間に読みやすい文字列にして返します。

:fred.inspect #=> ":fred"...
<< 1 2 3 ... > >>