有没有办法可选地返回一个带有"return yield"驱动迭代器的null?
我想在某些情况下返回null,我不认为这是IEnumerable类型字符串的特殊情况.同样适用于类型为int等的IEnumerable.谢谢
static void Main(string[] args)
{
var Items = GetItems();
if (Items != null)
{
foreach (var item in Items)
{
Console.WriteLine(item);
}
}
else
{
Console.WriteLine("<null>");
}
}
static IEnumerable<string> GetItems()
{
if (false)
{
yield return "Andy";
yield return "Jennifer";
}
return null; // <- Compiler Error:
// Cannot return a value from an iterator.
// Use the yield return statement to return a value,
// or yield break to end the iteration.
}
Run Code Online (Sandbox Code Playgroud) c# ×1