Linq

C# Linqの使い方。Select、Whereを解説。

今回のテーマ

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

今回は下記の記事について書いていこうと思います。

今回のテーマ

Linqの使い方を解説。SelectとWhereの使い方。

今回はC#のLinqについて学びましょう。覚えておくと本当に便利なので、基本的な使い方を覚えよう。

KappaChan
Linqは本当に便利かっぱ!

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

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

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

続きを見る

Linqを使う場面

Linqはリストや配列に対して、使用することが多いです。各要素に対して、値の取得や値の修正などを行えたりします。

リストや配列はEnumerableインタフェースを実装しているので、Linqを使用することができます。

この辺の詳しい話は別の記事でしていこうと思いますので、今回はLinqって何が便利なの?という所を話していければと思ってます。

KappaChan
Linqの便利さを実感してほしいかっぱ!

Linqメソッドの解説の流れ

これから複数の記事に渡って、Linqのメソッドを解説していこうとおもうので、下記のような流れで説明していきたいと思います。

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

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

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

この流れで色々なメソッドを解説していこうと思いますので、よろしくお願いします。

Selectの使い方

まずは一番使用するSelectを使ってみるかっぱ!!
KappaChan

Selectの使い方について、例を書いていきます。

行いたい処理

int型配列の全ての要素に対して2を足す。

Linqを使用しない例

 result
3
4
5
6
7

繰り返しでそれぞれ2を足しています。

続けてLinqを使用した例です。

Linqを使用する例

 result
3
4
5
6
7

Linqを使用した例です。array.Select(n => n + 2)がLinqの処理ですね。

繰り返し文を使ってそれぞれの要素に処理をしなければならなかったのが1行で書けてしまいます。これがLinqの強みです。=>は矢印ですね。

デリゲートを省略したものと覚えて頂ければいいのですが、今回の記事では重要じゃないので、とりあえず、「引数 => return文の結果」と考えて頂ければと思います。

Linqの演習問題はこちら

他の演習問題はこちら

Whereの使い方

KappaChan
Whereもよく使うかっぱ!

続けてWhereの使い方の例を見てみましょう。

行いたい処理

int型配列の中で偶数の条件のみ取りだし、新しい配列を作成する。

Linqを使用しない例

 result
2
4
6

普通に処理しようとすると中々大変ですね。続けてLinqを使った例を見てみます。

Linqを使用する例

 result
2
4
6

Linqのパワー凄くないですか?1行で目的のソースコードが出来てしまいました。

Linqのソースコードは下記の部分ですね。=>の左辺には配列の各値の引数を右辺には結果として、trueとfalseを結果として返します。

Whereメソッドでは、結果がtrueとなる値のみ残してくれます。

これがLinqの力です。この機会にぜひ覚えてください。

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

まとめ

今回の記事ではLinqの記事1回目として下記のメソッドを取り上げました。

今回のメソッド一覧

  • Select
  • Where

他のメソッドも別記事で紹介しますが、まず一番よく使うSelectとWhereでLinqの処理の動きを覚えてマスターしていきましょう!

KappaChan
Linqは本当に便利かっぱ!絶対覚えておくかっぱ!

今回の記事は以上とします。他メソッドについても別記事で沢山紹介していきますね。

最後まで見て頂きありがとうございました。

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

CHECK

C# Linqの使い方。Any、Allを解説。

今回のテーマContents1 今回のテーマ2 LinqのAnyとAllを使用する場面2.1 Any2.2 All3 Linqメソッドの解説の流れ4 Anyの使い方5 Allの使い方6 まとめ こんば ...

続きを見る

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

Linqの演習問題はこちら

他の演習問題はこちら

-Linq

X