using System;
public class Program
{
public static void Main()
{
// 定义一个 Lazy<T> 类型的变量,只有在第一次访问它的 Value 属性时才会初始化。
Lazy<int> lazyValue = new Lazy<int>(() =>
{
Console.WriteLine("Initializing value...");
return 42;
});
// 第一次访问 Value 属性,会触发初始化逻辑
Console.WriteLine($"Lazy value: {lazyValue.Value}");
// 再次访问 Value 属性,不会再次触发初始化逻辑
Console.WriteLine($"Lazy value: {lazyValue.Value}");
}
}
Lazy<T> 是 C# 中用于实现延迟初始化的类。它允许你定义一个对象,该对象的初始化操作只在第一次使用时执行。lazyValue 是一个 Lazy<int> 类型的变量,它包含了一个 lambda 表达式作为初始化器。这个初始化器只有在第一次访问 lazyValue.Value 时才会执行。lazyValue.Value 时,控制台会输出 "Initializing value...",并返回值 42。之后再次访问 lazyValue.Value 时,不会再执行初始化逻辑,直接返回之前计算的结果。上一篇:c#打开文件夹
下一篇:c# 指针
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站