c# - 如何遍历字典中满足某些条件的所有项目?C#
问题描述
我目前正在做一个项目,我必须遍历字典。我只想遍历包含 a 子字符串的字典中的键。因此,对于字典(键,值),我只想遍历该字典中键包含 A 的对。
我该怎么做?
解决方案
我该怎么做?
字典仅在检查相等性时提供 O(1)(快速)访问。没有办法在不循环的情况下“选择”包含值的键:
foreach(var entry in myDictionary)
{
if(entry.Key.Contains("A"))
// do something with entry.Value
}
您可以使用Where
Linq 中的方法,但它没有提供任何性能改进(它仍然在内部循环):
foreach(var entry in myDictionary.Where(e => e.Key.Contains("A"))
{
// do something with entry.Value
}
推荐阅读
- python - 创建一个字典列表,其中值是一个列表
- pandas - 将对象/字符串类型日期格式转换为日期时间类型时出现问题
- serial-port - 为什么串口不见了?
- c# - 带有 Blazor 和 MongoDB 的身份框架:登录时出错:无法解析类型“Microsoft.AspNetCore.Identity.SignInManager”的服务
- flutter - 当我尝试在我的 Mac m1 air 的终端中运行“flutter doctor --android-licenses”时出现此错误
- python - 如何在 Tkinter 中向根窗口添加高度?
- mysql - 我怎样才能阻止mysql自动更新表
- linkedin - 无法使用联系人 API
- nginx - 如何防止 nginx 的 ssl 端口回复纯 http 请求
- android - 如何设置 TMediaPlayer 的播放速度?