本日はC#の小ネタ枠です。
C#でEnumerable.Rangeを使って指定の数値範囲の繰り返し処理を行う方法です。
Enumerable.Range
Enumerable.Rangeは引数で指定した数値範囲の整数のシーケンスを生成します。
learn.microsoft.com
IEnumerable<int> squares = Enumerable.Range(1, 10).Select(x => x * x); foreach (int num in squares) { Console.WriteLine(num); }
サンプルスクリプト
Enumerable.Rangeを使ってリストの要素生成を行う以下のサンプルスクリプトを作成しました。
以下のようにForループを使って記述するような処理を簡潔に記述することも可能です。
・EnumerableRangeTest.cs
using System.Collections.Generic; using UnityEngine; using System.Linq; public class EnumerableRangeTest : MonoBehaviour { void Start() { // List<int>型のリストを作成 List<int> list = new List<int>(); // for文を使用して、0から9までのリストを生成してlistに追加 for(int i = 0; i < 10; i++) { list.Add(i); } Debug.Log($"ForLoop Result: {string.Join(", ", list)}"); // Rangeメソッドを使用して、10から19までのリストを生成してlistに追加 list.AddRange(Enumerable.Range(10, 10)); Debug.Log($"Range Result: {string.Join(", ", list)}"); } }