Linq

C# Linqは便利なので使い方を覚えよう。メソッドを組み合わせて使うと更に便利です。Where、Selectメソッド編

今回のテーマ

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

今回は今まで色々なLinqのメソッドを紹介してきたので、今まで紹介したメソッドを組み合わせて使ってみましょう。

今回のテーマ

Linqメソッドを組み合わせて使ってみよう!

この記事では、WhereとSelectメソッドを使っていきたいと思います。

各メソッドの説明に関しては、下記の記事にかいております。

CHECK

C# Linqはとても便利なので使い方を覚えよう。Selectメソッド、Whereメソッドを解説します。

今回のテーマContents1 今回のテーマ2 Linqを使用する場面3 Linqメソッドの解説の流れ4 Selectメソッドの使い方5 Whereメソッドの使い方6 まとめ こんばんは、かっぱちゃん ...

続きを見る

組み合わせて使うと本当に便利かっぱ!
KappaChan

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

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

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

続きを見る

Linqメソッドの解説の流れ

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

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

Linqを使用しない書き方と使用する書き方のソースコードを書いていきます。

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

WhereとSelectを一緒に使う例1

WhereとSelectを一緒に使って目的の処理を実装してみます。今回はLinqを使用しない例の記述はなしです。

使い方の例は今まで通りにやっていくかっぱ!!
KappaChan

行いたい処理

5以上の要素のみを2倍にした値を取り出したい。

Linqを使用する例

 result
12
10
16
18

5以上の値が2倍になって返ってきてますね!Whereで5以上のみ抽出し、抽出した値にSelectで2を掛けています。

WhereとSelectを一緒に使う例2

String型の配列のパターンもやってみます。

行いたい処理

文字列にaを含む要素だけ取り出し、語尾にmanをつける。

Linqを使用する例

 result
airman

Whereを使うときは相方としてContainsもよく使うのでぜひ一緒に覚えてください。

今回の場合はaを含むとしました。対象となるのはエアーマンだけしたね。

リストでも同じことができます。

行いたい処理

文字列にoを含む要素だけ取り出し、語尾にmanをつける。

Linqを使用する例

 result
rockman
woodman

リストでも基本的に同様です。

このようにLinqは組み合わせて使うとさらに便利に使うことが可能です。

このように使うことが可能なのは、Whereメソッド、Selectメソッド両方ともIEnumerable型で結果を返してくれるからです。

さらに、配列やリストはIEnumerableを実装しているので、配列化やリスト化も自由にできます。

この点を覚えておけば、どんどんLinqを扱っていけると思います!

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

まとめ

今回はWhereメソッドとSelectメソッドを一緒に使う例をみました。組み合わせて使うと本当に色々なことが出来るので、

ぜひ、みなさんも試してみてください!

他の記事でも色々紹介したメソッドを存分に使って組み合わせ例を沢山出していきたいと思いますので、楽しみにしていてください。

今回の記事は以上です。最後まで見て頂きありがとうございました。

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

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

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

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

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

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

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

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

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

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

-Linq

X