2016-05-10 14 views
0

私はクラスAを持っていて、クラスBの中にメソッドBを入れています。毎回bが呼び出されて何かをArrayに追加します。Makeメソッド "Dot"を使用して自分自身を呼び出します

class A 
    { 
     List<String> mParams = new List<String>(); 
     void b(String param) 
     { 
      mParams.Add(param); 
     } 
    } 

例は、任意の助けをいただければ幸いです。この

A.b("1").b("2").b("3"); 

のようにそれを作るためにすることが可能です。

おかげ

+0

「void」はチェーンできません。 –

+1

呼び出しを「連鎖する」ために、 'b()'はオブジェクト自体を返すべきです。すなわち 'return this;' –

+3

これは* bad *の構文です。値の範囲を追加する場合は、値の範囲を追加します。つまり、IEnumerable を渡します。それは、ほとんどのコンテナの 'AddRange()'メソッドがどのように機能するかです。あなたは 'b(new [] {" 1 "、" 2 "、" 3}}) 'を書くか、他のコードで生成されたリスト/配列/コンテナを使うことができます。 –

答えて

8

あなたの方法bリターンthisを行います。

public A b(string a) 
{ 
    //Do stuff 
    return this; 
} 
+0

ありがとうございました クロービスPortron、Panagiotis Kanavos 36とdavid L –

関連する問題