3

重複の可能性: Ruby の
シンボルを理解する
Ruby のコロン演算子とは?

私はこれを尋ねるのは本当にナイーブだと思いますが、先に進んで質問します:

:ruby におけるの重要性は何ですか?

params[:id]のような多くの場所で使用されているのを見てきましたx < :length

4

3 に答える 3

6

コロンは「記号」を表します。シンボルは文字列に似ていますが、不変です (内容を変更することはできません)。シンボルがメモリ内に存在する必要があるのは 1 回だけであるため (つまり、"length" と呼ばれる 2 つの文字列はメモリ内に 2 回存在しますが、:length と呼ばれる 2 つのシンボルは同じオブジェクトを指します)。

于 2012-10-25T14:12:44.187 に答える
2

:lengthシンボルであることを意味します

シンボルは文字列ですが、重要な違いがあります。シンボルは不変です。

RubyDoc: Symbol オブジェクトは、Ruby インタープリター内の名前と一部の文字列を表します。それらは、:name および :"string" リテラル構文を使用して、さまざまな to_sym メソッドによって生成されます。

シンボルについて詳しく学ぶには、いくつかの良い場所があります

于 2012-10-25T14:20:52.570 に答える
2

インタプリタ用の型の構文表示です。

0-9   numeric*
:     symbol
""    string
[]    array
{}    hash
  • 実際にはもっと複雑なパターン。
于 2012-10-25T14:21:49.470 に答える