空(真/偽)は、クラス変数@arr
が空であるかどうかによって異なります。あなたがこれを行うだろうよう
5
A
答えて
7
疑問符は、実際にはメソッド名の一部である:私はなく、別のメソッド名と、前回の記事で示したよう
class MyClass
def empty?
@arr.empty? # Implicitly returned.
end
end
2
全く同じ。
まず、create
は、empty?
メソッドで何かを返す必要があります。たとえば、次のように
class MyClass
def self.create
[]
end
end
あなたの最後の質問ごとにMyClass
のインスタンス上で動作するようにしたい場合:ここで
class MyClass
def self.create
MyClass.new
end
def initialize
@arr = []
end
def empty?
@arr.empty?
end
def add x
@arr << x
self
end
end
アレイの周りに単純なラッパーとしてMyClass
行為、add
方法を提供します。
2
@arrがnilであるかどうかを確認する必要があります。これは空のクラス定義に依存します。
def empty?
[email protected] || @arr.empty?
end
0
あなたは配列にあなたのクラスからempty?
を委任するForwardable
を使用することができます。
require "forwardable"
class MyClass
extend Forwardable
def_delegators :@arr, :empty?
def initialize(arr)
@arr = arr
end
end
my_object = MyClass.new([])
my_object.empty? # => true
関連する問題
- 1. Webrickのデフォルトポートを設定する方法は?私は3010に</p> <pre><code>rails s </code></pre> <p>を行う際
- 2. Heredoc <<<または<<?
- 3. 「<%:」は何をしますか?</p> <pre><code><%: Model.FirstName %> </code></pre> <p>「<%:」何をん:行う
- 4. は、どのように私は<code>NAVIGATION_MODE_LIST</code></p> <pre><code>getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); </code></pre> <p>に<code>action bar</code>を設定し、それ用のアダプタを設定しNAVIGATION_MODE_LIST
- 5. ルーティングレガシーリンク私は</p> <blockquote> <p>/signedin/mypage.aspx?my_key=152372</p> </blockquote> <p>にこのような何かをリダイレクトしたい
- 6. Gitは<<<<<<< HEADをファイルに追加し続けます
- 7. Rubyのattr_readerは、<<
- 8. は、どのように私は<code>string</code>あるこの</p> <pre><code>var alldest = cc.returnallfullDestinations(mainElement).Split('|'); </code></pre> <p><code>returnallfullDestionations</code>のようなデータを取得していますC#
- 9. 私は<code><title></code></p> <p>の内容を等しくなるように<code>value</code>の内容を設定したい<code>id="title-of-page"</code>で<title>タグの内容を持つ要素で
- 10. layout.xmlの目的は何ですか?特定の構成のために特定のXMLを使用するための代替資源のためのフォルダがある一方で</p> <pre><code><resources> <item name="main" type="layout">@layout/main_twopanes</item> </resources> </code></pre> <p>:
- 11. Rubyのクラス<<自己
- 12. << Rubyの意味
- 13. Rubyのプット<< PARAGRAPH
- 14. 即値幅の指定方法は?例えば<strong>rel8</strong>ため<code>jmp</code>命令が実行されるように</p> <pre><code>jmp label </code></pre> <p>どのように私は即時の幅を指定します:
- 15. THREE.Camera.prototype.lookAt</ <() -</ <はどういう意味ですか?
- 16. 私は<strong>Dom.max_script_run_time</strong></p> <p><a href="http://kb.mozillazine.org/Dom.max_script_run_time" rel="nofollow">http://kb.mozillazine.org/Dom.max_script_run_time</a></p> <p>、デフォルトは10秒に設定されているためFirefoxの構成設定を読んでいるdom.max_script_run_time
- 17. 私のアプリを構築するAndroidのデバイスアーキテクチャは何ですか?私がすべき</p> <ul> <li>armeabi</li> <li>armeabi-v7a</li> <li>のx86</li> </ul> <p>何アーキテクチャ(S):Android用
- 18. に</p> <p>(<strong>doc.pdf</strong>が<strong>PHPスクリプト</strong>と同じディレクトリに存在している)私は</p> <pre><code>$pageCount = $pdf->setSourceFile("doc.pdf"); </code></pre> <p>から<em>PDFパス</em>を設定しようとしていますFPDF
- 19. std :: cout << xの間のdiffrenceは何ですか;とstd :: cout << x << std :: endl ;?
- 20. ジェネリック型のためのカスタムデシリアライザの作成方法私はFooのためのカスタム・ジャクソンのデシリアライザを書きたい</p> <pre><code>class <T> Foo<T> { .... } class Bar { Foo<Something> foo; } </code></pre> <p>:
- 21. "**/* /"と "** /"の違いは?出力は、少なくとも小さなサブツリーのために、同じように見える</p> <p><code>Dir.glob("**/*/")</code></p> <p><code>Dir.glob("**/")</code></p> <p>:ここ
- 22. Djangoは:私はどのように設定できるか</p> <pre><code>qs = MyModel.Objects.filter(....) </code></pre> <p>:私はブールフィールドの他の場所<code>active</code></p> <p>とモデル<code>MyModel</code>を持って
- 23. 私は宝石のコマンドを入力するたびに、私はこのエラーを取得するように</p> <pre><code>gem "tilt" </code></pre> <p>または</p> <pre><code>gem "mysql" </code></pre> <p>として、宝石、未知のコマンド
- 24. マウスは、マウスが<code>.wrap</code>、<code>.cube</code>と<code>.front</code>のために働いてではなく、<code>.left</code>、<code>.right</code>、<code>.top</code>、<code>.bottom</code>と<code>.back</code>のためにされ
- 25. <strong><em></em></strong>漢字から<strong><em></strong></em>に羽生ピンインを変換する方法
- 26. は、私は私の<strong><em>カスタムウィジェットコードから</em></strong>を追加<strong><em>QGridLayout</em></strong>で、QGridLayout
- 27. クラス<<内部でクラス定義は何をしますか?
- 28. のPython:テキストを削除する方法についての方法があります。.. </p> <pre><code><@ """@$ FSDF >something something <more noise> </code></pre> <p>は今、私はちょうど「何かの何か」を抽出したいように、私は騒々しいdata..somethingを持って
- 29. 私はTBODYには<code><tr><td></td></tr></code>は、ここに私のコードではない場合でも、CSSのtbodyのための最小の高さを設定する方法をCSS
- 30. << CONSTANTは何をしますか?
あなたは*クラス変数* 'arr' @@または*インスタンス変数*'を意味するか@ arr'? – maerics
Rubyには、 'MyClass.new'によって呼び出される' initialize'があります。 – Reactormonk
"Rubyでは、MyClass.newによって呼び出される初期化があります"。合意したそしてRubyでそれに従うことは良いことです。あなたのルビースリッパを持っているときに黄色いレンガの道に固執してください。 –