日本語
こんばんわ!
Advent Calendar 2024に参加してまして、22日目の記事を書いていこうと思います。
題材は「C# Advent Calendar 2024」ということで、Linqについて書いていこうと思います。
LINQ とは?
LINQ (Language Integrated Query) は、C# に統合されたクエリ言語です。SQL のようなクエリ構文を使って、オブジェクトやデータソースを操作できます。LINQ を使うと、コードがシンプルで直感的になり、生産性が向上します。
使用例
LINQ には 2 つの構文があります。
クエリ式構文(Query Syntax) - SQL ライクな書き方
メソッド式構文(Method Syntax) - メソッドチェーンを使った書き方
偶数を取得するコードをそれぞれで書いてみます。
クエリ式構文
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var evenNumbers = from n in numbers
where n % 2 == 0
select n;
foreach (var number in evenNumbers)
{
Console.WriteLine(number);
}
メソッド式構文
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var evenNumbers = numbers.Where(n => n % 2 == 0);
foreach (var number in evenNumbers)
{
Console.WriteLine(number);
}
メソッドには下記様々あります。バリエーション豊かです
| 操作 | 説明 |
|---|---|
| Where | 条件に一致する要素をフィルタリングする |
| Select | 各要素を変換する |
| OrderBy | 昇順に並べ替える |
| OrderByDescending | 降順に並べ替える |
| GroupBy | グループ化する |
| Sum | 合計値を計算する |
| Average | 平均値を計算する |
| Count | 要素数をカウントする |
| First | 最初の要素を取得する |
| Any | 条件に一致する要素があるか判定する |
ここまでです。
読んでいただきありがとうございます
ENGLISH
Good evening!
I am participating in Advent Calendar 2024 and I am going to write an article for the 22nd day.
The subject is “C# Advent Calendar 2024”, so I will write about Linq.
What is LINQ?
LINQ (Language Integrated Query) is a query language integrated into C# that allows you to manipulate objects and data sources using an SQL-like query syntax.
Example usage
LINQ has two syntaxes.
Query Syntax - SQL-like syntax
Method Syntax - a way to write using method chains
Let's try to write a code to get an even number in each syntax.
Query Syntax
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var evenNumbers = from n in numbers
where n % 2 == 0
select n;.
foreach (var number in evenNumbers)
{
Console.WriteLine(number);
}
method expression syntax
int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var evenNumbers = numbers.Where(n => n % 2 == 0);
foreach (var number in evenNumbers)
{
Console.WriteLine(number);
}
Methods include the following There are many variations
| Operation | Description |
|---|---|
| Select | Convert each element to a new one. |
| Select | Convert each element |
| Sort by ascending order | OrderByDescending |
| Sort in Descending Order | GroupBy |
| GroupBy | Group the elements together |
| Sum | Calculate the total value |
| Average | Calculate the average value |
| Count | Count the number of elements |
| Any | Any element that matches the condition |
| Any | Determine if any element matches the condition |
That's all for now.
Thank you for reading!
