gpt4 book ai didi

c# - 使用 lambda 表达式而不是 foreach 是一种好习惯吗?

转载 作者:太空狗 更新时间:2023-10-29 21:08:09 25 4
gpt4 key购买 nike

<分区>

今天我在开发一个 TextToSpeech 应用程序时遇到了一种情况,我需要检查计算机上是否安装了用户选择的语音。

为此,我可以使用 foreach:

bool foundVoice = false;
foreach (var v in installedVoices)
{
if (v.VoiceInfo.Name.Contains(selectedVoice) && v.VoiceInfo.Culture.ToString() == selectedCulture)
{
foundVoice = true;
break;
}
}

或者一个lamda表达式:

var foundVoice = installedVoices.FirstOrDefault(v => v.VoiceInfo.Name.Contains(selectedVoice) && v.VoiceInfo.Culture.ToString() == selectedCulture);

installedVoices 是来自 SpeechSynthesizerReadOnlyCollection< InstalledVoice >

当然,lambda 表达式看起来比 foreach 更简洁,但哪个更好?

根据我的测试,foreach 似乎比 lambda 表达式稍微快。

此外,如果需要对 InstalledVoice 立即采取行动,将来可以扩展 foreach 和 lambda。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com