名前空間: System.Collections.Generic
自己紹介
こんにちは、私は太陽の女神の姿を借りた「List<T>」です。2回目の登場ですね。私の役目は、あなたのプログラムに光と温かさを与えること。そして、たくさんの要素たちをまとめて管理し、簡単に操作できる力をお届けします。今日は、私が持つ特別な「ForEach」機能を紹介しますね。
基本機能
「List<T>.ForEach(Action<T>)」は、私に保存されているすべての要素を1つずつ処理するための力です。この力を使えば、ループ構文をわざわざ書かずに、簡潔にコードを記述することができます。与えられたアクション(処理)を、それぞれの要素に適用するのが私の使命です。
ForEachの役割
私のForEachは、リスト内の要素全てに同じ処理を適用するのが得意です。たとえば、すべての数字を2倍にしたり、文字列に接頭辞を追加したりする操作が簡単にできます。
ForEachを使う際の注意点
ForEachは各要素に対する処理を行いますが、リスト自体の構造を変更することはできません。例えば、要素を追加・削除する場合は、他の方法を使う必要があります。
foreachとの違い
foreachループも同じようにリストの要素を扱えますが、ForEachを使うことで、コードを短く、見やすくすることができます。また、ラムダ式を使った処理を簡単に記述できるのがForEachの特徴です。
デリゲートの活用
ForEachは「デリゲート」という仕組みを利用しています。デリゲートは、処理内容を引数として渡すためのものです。この仕組みにより、動的に処理内容を変えることができます。
サンプルコード
using System; using System.Collections.Generic; class Program { static void Main() { // 数値のリストを作成 List<int> numbers = new List<int> { 1, 2, 3, 4, 5 }; // 各要素を二倍にして表示 Console.WriteLine("リストの要素を二倍にします:"); numbers.ForEach(num => Console.WriteLine(num * 2)); // 文字列のリストを作成 List<string> fruits = new List<string> { "りんご", "みかん", "ぶどう" }; // 各要素を出力 Console.WriteLine("フルーツのリスト:"); fruits.ForEach(fruit => Console.WriteLine($"フルーツ名: {fruit}")); // foreach文を使った例 Console.WriteLine("foreach文を使った例:"); foreach (var fruit in fruits) { Console.WriteLine($"フルーツ名: {fruit}"); } } }
解説
このコードでは、ForEachとforeachの違いを示し、List<T>.ForEach(Action<T>)の便利さを実感していただけるようにしました。ForEachを使えば、ラムダ式を簡単に渡せるため、コードが短くなり見やすくなります。ぜひ活用してみてください!
0 件のコメント:
コメントを投稿