Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# 迭代器

作者:故事没有她   发布日期:2026-05-05   浏览:32

using System;
using System.Collections.Generic;

public class NumberSequence
{
    private int start;
    private int end;

    public NumberSequence(int start, int end)
    {
        this.start = start;
        this.end = end;
    }

    // 定义一个迭代器方法,返回 IEnumerable<int>
    public IEnumerable<int> GetSequence()
    {
        for (int i = start; i <= end; i++)
        {
            yield return i;
        }
    }
}

public class Program
{
    public static void Main()
    {
        NumberSequence sequence = new NumberSequence(1, 5);

        foreach (int number in sequence.GetSequence())
        {
            Console.WriteLine(number);
        }
    }
}

解释说明:

  1. NumberSequence 类:这是一个自定义类,用于生成从 startend 的数字序列。
  2. GetSequence 方法:这是一个迭代器方法,使用了 yield return 关键字。它会逐个返回从 startend 的整数,而不会一次性生成整个序列,从而节省内存。
  3. foreach 循环:在 Main 方法中,我们使用 foreach 循环来遍历 GetSequence 方法返回的序列,并打印每个数字。

通过这种方式,C# 的迭代器允许你逐步生成和处理数据,而不是一次性加载所有数据到内存中。

上一篇:c#modbus tcp

下一篇:c# checkbox

大家都在看

c# 二进制

c# 创建目录

c# socket服务端连接多个客户端

c# datatable group by

c# tcp client

c# type.gettype

c# sqlconnection

c# string.format 小数位数

c# invoke方法

.net和c#

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站