9
21

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

C# LINQ チーとシート

Last updated at Posted at 2023-10-19

技術記事: C# LINQ メソッドの使い方

C#において、LINQ (Language Integrated Query) はデータへのクエリを簡潔に書くための強力な機能です。以下に、よく使われるLINQメソッドの使い方を具体的な例とともに紹介します。

  1. Select - コレクション内の各要素に対して操作を行う
var numbers = new[] { 1, 2, 3, 4, 5 };
var squaredNumbers = numbers.Select(n => n * n);
  1. Where - コレクション内の要素をフィルタリングする
var evenNumbers = numbers.Where(n => n % 2 == 0);
  1. OrderBy - コレクション内の要素を昇順に並び替える
var orderedNumbers = numbers.OrderBy(n => n);
  1. OrderByDescending - コレクション内の要素を降順に並び替える
var descendingNumbers = numbers.OrderByDescending(n => n);
  1. ThenBy - 前のOrderByまたはThenByの後に追加のソート条件を適用する
var people = new[] 
{ 
    new { Name = "Alice", Age = 30 },
    new { Name = "Bob", Age = 30 },
    new { Name = "Charlie", Age = 25 }
};
var orderedPeople = people.OrderBy(p => p.Age).ThenBy(p => p.Name);
  1. ThenByDescending - 前のOrderByまたはThenByの後に追加の降順ソート条件を適用する
var descendingOrderedPeople = people.OrderBy(p => p.Age).ThenByDescending(p => p.Name);
  1. GroupBy - コレクション内の要素をキーに基づいてグループ化する
var ageGroups = people.GroupBy(p => p.Age);
  1. ToList - コレクションをListに変換する
var numberList = numbers.ToList();
  1. ToArray - コレクションを配列に変換する
var numberArray = numbers.ToArray();
  1. First - コレクションの最初の要素を返す
var firstNumber = numbers.First();
  1. FirstOrDefault - コレクションの最初の要素を返す。存在しない場合はデフォルト値を返す
var firstOrZero = numbers.FirstOrDefault(n => n > 10);
  1. Last - コレクションの最後の要素を返す
var lastNumber = numbers.Last();
  1. LastOrDefault - コレクションの最後の要素を返す。存在しない場合はデフォルト値を返す
var lastOrZero = numbers.LastOrDefault(n => n > 10);
  1. Single - コレクションから単一の要素を返す
var singleNumber = numbers.Single(n => n == 3);
  1. SingleOrDefault - コレクションから単一の要素を返す。存在しない場合はデフォルト値を返す
var singleOrZero = numbers.SingleOrDefault(n => n > 10);
  1. Count - コレクション内の要素数を返す
var totalCount = numbers.Count();
  1. Sum - コレクション内の数値要素の合計を返す
var totalSum = numbers.Sum();
  1. Average - コレクション内の数値要素の平均値を返す
var averageValue = numbers.Average();
  1. Max - コレクション内の最大値を返す
var maxValue = numbers.Max();
  1. Min - コレクション内の最小値を返す
var minValue = numbers.Min();
  1. All - 全ての要素が指定した条件を満たすかどうかを確認する
var allEven = numbers.All(n => n % 2 == 0);
  1. Any - いずれかの要素が指定した条件を満たすかどうかを確認する
var anyOdd = numbers.Any(n => n % 2 != 0);
  1. Contains - コレクションが特定の要素を含むかどうかを確認する
var containsThree = numbers.Contains(3);
  1. Distinct - コレクションから重複する要素を除いて返す
var distinctNumbers = numbers.Distinct();
9
21
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
21

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?