MRが楽しい

MRやVRについて学習したことを書き残す

C#でEnumerable.Rangeを使って指定の数値範囲の繰り返し処理を行う

本日は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)}");
    }
}