Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 任意(LINQ)中的语句lambda_C#_Linq_Unity3d_Lambda_Any - Fatal编程技术网

C# 任意(LINQ)中的语句lambda

C# 任意(LINQ)中的语句lambda,c#,linq,unity3d,lambda,any,C#,Linq,Unity3d,Lambda,Any,我的代码有点问题,也许我是瞎子,但我看不出有什么问题 prefabPool.Any( bullet => { if(bullet.activeSelf == false) { bullet.SetA

我的代码有点问题,也许我是瞎子,但我看不出有什么问题

   prefabPool.Any( bullet => 
                                {
                                    if(bullet.activeSelf == false)
                                    {
                                        bullet.SetActive(true);
                                        return true;
                                    }   
                                    return false;  
                                }; 
                                );
这是我的lambda语句,编译器在第9行给了我一个错误

)应为[Assembly CSharp]CSharp(CS1026)

实际上我不知道问题出在哪里,因为我的语法似乎很好

这一点:

}; // This is still a parameter inside the .Any( )
);
只需要最后一个分号:

});
.Any()
一旦找到一个匹配项就会停止。IMHO将
.Any()
与具有副作用的lambda一起使用会降低代码的可读性

在你的情况下,我将用

prefablepool.FirstOrDefault(b=>!b.activeSelf)?.SetActive(true);

我把语法搞乱了。。。我认为规则是:(输入参数)=>{};结尾用分号。谢谢您!!!我现在明白了,谢谢你的建议!它比我的可读性强