【C#】Tupleを使ってメソッドから複数返り値を返す方法

IMAG0638

2015年03月26日(木)

今回もC#のTipsです。こちらのTipsは.net4以降になってしまうのですが、いままでめんどくさかったことがめちゃくちゃやりやすくなるので是非覚えておいたほうがいいですね。

今までoutとかrefとか参照渡したりstructしていたものが、Tupleを使うととても簡単にスマートにできちゃいます。

 

まずはサンプルコードから
メソッドを記述します。

 

複数返り値を返す

public Tuple<string, int> getTuple()
{
 string res1 = "sample";
 int res2 = 1234;
 
 return Tuple.Create(res1, res2);
}

 

複数返り値を取得する

var resTuple = getTuple();

string val1 = resTuple.Item1;
int val2 = resTuple.Item2;

 

てな感じでとても簡単にできちゃいます。
また、「要素の個数」「型」を明示的に指定しているので安心ですよね。
Tupleの使いどころとか、Dictionaryを掛け合わせて素敵なことをしている神がおりましたので、紹介だけさせていただきます。

http://csharper.blog57.fc2.com/blog-entry-290.html

これをマスターしたらクリーンなコーディングもできそうですね。

スポンサードリンク

運営サービスPR

スポンサードリンク

運営サービスPR