Linq

C# Linqの使い方 ToLookup、Zipの使い方について解説します。

今回のテーマ

こんばんは、かっぱちゃんです。

今回もLinqのメソッドを紹介してきます。今回紹介するメソッドは下記です。

今回のテーマ

Linqのメソッド、ToLookup、Zipの使い方

今回はToLookup、Zipメソッドについて解説します。ToLookupはGroupByと用途がとても似ていますが、活躍する場面が多少違うので、

今回の記事として書くことにしました。

GroupByは下記の記事をみてください。

CHECK

C# Linqの使い方。GroupByを使ってグループ化しよう。

今回のテーマContents1 今回のテーマ2 GroupByについて2.1 GroupBy3 Linqメソッドの解説の流れ4 定義するクラスについて5 GroupByの使い方6 2つ以上指定する方法 ...

続きを見る

今回はToLookupとZipついて解説するかっぱ!
KappaChan

他のLinqの記事についてはこちら

合わせて読みたいC# Linqを勉強するならこれだけは読んでほしいオススメの本3選 オススメの参考書

C#を勉強するためのオススメの本を紹介Contents1 C#を勉強するためのオススメの本を紹介1.1 C#の基礎を学ぶなら「やさしいC#」1.2 C#の全体像を学ぶなら「独習C#」1.3 C#をさら ...

続きを見る

Linqの演習問題はこちら

他の演習問題はこちら

ToLookup、Zipについて

ToLookup

指定した要素においてグループ化を行う。生成されたILookup型はキーを直接指定してアクセスが可能。

Zip

2つの配列から結びつきのある別の配列に作成する。

KappaChan
2つ共、文章では分かりにくいので、ソースコードを見て理解してほしいかっぱ!

Linqメソッドの解説の流れ

下記の流れで説明したいと思います。

行いたい処理の例を書きます。

Linqを使用するソースコードを書いていきます。

ソースコードには、リスト、配列を使います。

KappaChan
今回はLinqを使用しない例は長くなるので書かないかっぱ!

定義するクラスについて

今回、ToLookupを説明するときに使用するクラスです。GroupByの説明の時と同じものを使用します。

使用するクラス

ToLookupの使い方

GroupByの使い方について、例を書いていきます。今回行いたい処理です。

行いたい処理

メーカーで別々のリストを作りたい。

メーカーでグループ分け

 result
Maker:Dr Light Name:Rockman
Maker:Dr Light Name:Roll
-------------------------------
Maker:Dr Wily Name:Fireman
Maker:Dr Wily Name:Iceman
Maker:Dr Wily Name:Elecman
Maker:Dr Wily Name:Airman
Maker:Dr Wily Name:Woodman
-------------------------------

上記の例をみて分かるように、Groupbyと使い方は何も変わらないです。

ライト博士のロボットリストとワイリー博士のロボットリストが作成されてます。

ToLookUpでは何が出来るかというと、キーを指定してアクセスすることが可能です。

下記の例を見てください。

 result
Rockman
Roll

ライト博士を指定して、ライト博士のロボットのリストを取り出すことが出来ております。ToLookupではこのような操作が可能です。

このメリットを活かすためにToLookupを使うときはToListやToArrayと同じようにLinqメソッドの最後に指定したほうがいいでしょう。

ToLookUpのメリットを解説したかっぱ!IToLookup型はDictionary型に似てるかっぱ!
KappaChan

Zipの使い方

次はZipメソッドの使い方について解説します。

行いたい処理

名前配列とメーカー配列をName:名前 Maker:メーカー名と出力したい

Linqを使用した例

 result
Name:Rockman Maker:Dr Light
Name:Fireman Maker:Dr Wily
Name:Iceman Maker:Dr Wily
Name:Elecman Maker:Dr Wily
Name:Roll Maker:Dr Light
Name:Airman Maker:Dr Wily

2つの配列が同じインデックスによって、結びつきがある場合に使用することができます。

あまり使う場面はないかもしれませんが、使う場面があると、とても強力なので覚えておきましょう。

KappaChan
覚えておいて損はないかっぱ!

まとめ

今回もLinqメソッドの紹介記事でした。今回の取り上げたメソッドを下記に纏めます。

今回のメソッド一覧

  • ToLookup
  • Zip

今回は上記のメソッドについて、紹介しました。Linqメソッド紹介の記事については、多くても2記事くらいで終わりにしたいと思います。

よく使うものから、あまり使わないものまで紹介してきましたが、覚えておいて損はないメソッドばっかなので、ぜひ覚えてくださいね。

これからは組み合わせて使う記事を増やしていこうと思うので、よろしくお願いします。

KappaChan
最後まで見てくれてありがとうかっぱ!

他のLinqの記事についてはこちら

Linqの演習問題はこちら

他の演習問題はこちら

-Linq

X