在某些情况下,方法应该与 yield return 一起使用,但在其他情况下则不然。
问题是,如果使用带有yield return的方法为变量赋值,则只返回一项。
在这种情况下,将需要两种方法,一种用于常规使用,另一种用于收益返回。
有什么方法可以在循环外使用该方法与 yield return 吗?
在某些情况下,方法应该与 yield return 一起使用,但在其他情况下则不然。
问题是,如果使用带有yield return的方法为变量赋值,则只返回一项。
在这种情况下,将需要两种方法,一种用于常规使用,另一种用于收益返回。
有什么方法可以在循环外使用该方法与 yield return 吗?
你的意思是你可以在循环之外使用吗? yield return
答案是肯定的:
IEnumerable<string> GetStrings()
{
yield return "foo";
yield return "bar";
yield return "baz";
}
...但这将是yield return
.
使用的方法yield return
将返回一个IEnumerable
并且可能返回更具体的东西,比如一个IEnumerable<int>
. 如果您只对第一项感兴趣,可以致电:
int myInt = myYieldReturnMethod().First();