Linq

C# Linq タプルとGroupbyを組み合わせて複数項目のグループに分ける方法 とても便利!

今回のテーマ

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

今回の記事はGroupbyとタプルを組み合わせて、複数項目のグループに分ける記事です。

前回も同様に複数項目を分ける方法の記事を書きましたが、タプルを使用した例をもう少しあげるために、この記事を書きました!!

早速ソースコード例と出力をみていきましょう!

KappaChan
今回はタプルとLinqのGroupbyメソッドの組み合わせかっぱ!

前回の記事はこちらです。

合わせて読みたいC# Linq Groupby グループ化する項目を複数指定する方法

今回のテーマContents1 今回のテーマ2 今回使用するクラス3 複数項目でグループ化する方法4 複数項目でグループ化する方法(タプルを利用する方法)5 まとめ こんばんは、かっぱちゃんです。 今 ...

続きを見る

Groupbyメソッドの使い方は下記の記事です。

合わせて読みたいC# Linqは便利なので使い方を覚えよう。GroupByを使ってグループ化しよう。

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

続きを見る

今回使用するクラス

このブログにおいて、ど定番のロボットクラスを使用します。

今回のロボットクラスは、各ロボット名に対し、メーカー、色、シリーズ、強さの項目を作りました。

タプルを使用して、2項目のグループ分けをしてみよう

早速、タプルで2項目指定してグループ分けしてみましょう。タプルとGroupbyの組み合わせの素晴らしさを味わって下さい。

この素晴らしさを感じてほしいので、いつも以上にロボットの追加を頑張りました。

強さはかっぱちゃんの主観で設定しています!!(異論は認める!)

まずはメーカー、色別で分けてみましょう!!

 出力結果
Name:Rockman Maker:Dr Light Color:Blue
----------------------------------------
Name:Rollchan Maker:Dr Light Color:Pink
----------------------------------------
Name:Heatman Maker:Dr Wily Color:Red
Name:Fireman Maker:Dr Wily Color:Red
Name:Quickman Maker:Dr Wily Color:Red
Name:Sparkman Maker:Dr Wily Color:Red
----------------------------------------
Name:Iceman Maker:Dr Wily Color:Blue
Name:Airman Maker:Dr Wily Color:Blue
Name:Shadowman Maker:Dr Wily Color:Blue
Name:Hardman Maker:Dr Wily Color:Blue
Name:Flashman Maker:Dr Wily Color:Blue
----------------------------------------
Name:Snakeman Maker:Dr Wily Color:Green
Name:Woodman Maker:Dr Wily Color:Green
----------------------------------------

凄く簡単ですよね!Groupbyでグループ別にしたい項目をタプルに設定するだけで出来てしまいます!素晴らしい!

シリーズ、強さ別にも分けてみましょう!

 出力結果
Name:Rockman Series:1 Strength:5
----------------------------------------
Name:Rollchan Series:1 Strength:1
----------------------------------------
Name:Heatman Series:2 Strength:2
Name:Flashman Series:2 Strength:2
----------------------------------------
Name:Fireman Series:1 Strength:3
----------------------------------------
Name:Iceman Series:1 Strength:4
----------------------------------------
Name:Quickman Series:2 Strength:5
----------------------------------------
Name:Airman Series:2 Strength:3
Name:Woodman Series:2 Strength:3
----------------------------------------
Name:Shadowman Series:3 Strength:5
----------------------------------------
Name:Snakeman Series:3 Strength:3
----------------------------------------
Name:Sparkman Series:3 Strength:4
Name:Hardman Series:3 Strength:4
----------------------------------------

沢山グループが出来てしまいましたが、正しくグループ分けされていますね!

KappaChan
タプルとGroupbyの組み合わせは本当に使いやすいかっぱ

タプルを使用して、3項目のグループ分けをしてみよう

3項目以上も同様にタプルに複数個指定するだけで大丈夫です。

メーカー、色、シリーズ別に分けてみましょう。

 出力結果
Name:Rockman Maker:Dr Light Color:Blue Series:1
----------------------------------------
Name:Rollchan Maker:Dr Light Color:Pink Series:1
----------------------------------------
Name:Heatman Maker:Dr Wily Color:Red Series:2
Name:Quickman Maker:Dr Wily Color:Red Series:2
----------------------------------------
Name:Fireman Maker:Dr Wily Color:Red Series:1
----------------------------------------
Name:Iceman Maker:Dr Wily Color:Blue Series:1
----------------------------------------
Name:Airman Maker:Dr Wily Color:Blue Series:2
Name:Flashman Maker:Dr Wily Color:Blue Series:2
----------------------------------------
Name:Shadowman Maker:Dr Wily Color:Blue Series:3
Name:Hardman Maker:Dr Wily Color:Blue Series:3
----------------------------------------
Name:Snakeman Maker:Dr Wily Color:Green Series:3
----------------------------------------
Name:Woodman Maker:Dr Wily Color:Green Series:2
----------------------------------------
Name:Sparkman Maker:Dr Wily Color:Red Series:3
----------------------------------------

沢山別れてましたが、3つ以上でも正しくグループ分けされていますね。

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

まとめ

今回の記事はタプルとGroupbyを組み合わせると便利!という記事でした。

結構使用する場面あると思うので、覚えておくと便利ですよ!

それでは、お役に立てられていたら光栄です!それでは、また!!

KappaChan
今回の記事は以上かっぱ!
合わせて読みたいC# Linqを勉強するならこれだけは読んでほしいオススメの本3選 オススメの参考書

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

続きを見る

プログラミングを一人で独学をするならプロからオンラインで教えてもらいましょう!10倍効率いいです!!

数多くあるプログラミング教室の中で2つのオンライン教室を厳選しました!どちら共、エンジニアとしての就職までサポートしてくれる本当にオススメの教室です。個別相談は完全無料です!!

カウンセリングは完全無料!未経験でITエンジニアを目指したい方にオススメ!

Webエンジニアになりたい方にオススメ!個別相談は無料!

KappaChan
オンラインのプログラミング教室は本当にオススメかっぱ!!

新しいサイト作りました。アニメのまとめサイトです。

レインボーリアルタイムTwitter(アニメ版)

レインボーリアルタイムTwitter(映画版)

-Linq

X