如何在初始化程序中使用lazy?

Jac*_*ack 1 .net c# lazy-initialization

我有一个数组,我在声明时初始化它的值,如下所示:

Foo[] f = Foo[] { new Foo { y = 1 }, new Foo { y = 3 } };
Run Code Online (Sandbox Code Playgroud)

lazy该如何使用?

想象代码

Lazy<Foo[]> f = new Lazy<Foo[]> { new Foo { y = 1 }, new Foo { y = 3 } };
Run Code Online (Sandbox Code Playgroud)

Bra*_*non 6

我这样想:

Lazy<Foo[]> f = new Lazy<Foo[]>(() => new[] { new Foo { y = 1 }, new Foo { y = 3 } });
Run Code Online (Sandbox Code Playgroud)