使用字典(Dictionary)习题

熟悉掌握值查找键并返回所有匹配的键

题目:有一个Dictionary<string, int>,其中键是学生姓名,值是学生成绩。要求编写一个方法,传入一个成绩值,返回所有成绩等于该值的学生姓名的列表。

cs 复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 合并两个字典
{
    internal class Program
    {
        static void Main(string[] args)
        {
            Dictionary<string,int>dict1 = new Dictionary<string, int>()
            {
                {"这是1",1 },
                {"这是2",2 }
            };
            Dictionary<string, int> dict2 = new Dictionary<string, int>()
            {
                {"这是3",3 },
                {"这是5",5 }
            };
            Dictionary<string,int>merged= MergedDictinonary(dict1,dict2);
            foreach(KeyValuePair<string,int> pair in merged)
            {
                Console.WriteLine($"键{pair.Key},值{pair.Value}");
            }
        }
        static Dictionary<string, int> MergedDictinonary(Dictionary<string, int> dict1, Dictionary<string, int> dict2)
        {
            Dictionary<string,int>mergeDi = new Dictionary<string,int>(dict1);
            foreach(KeyValuePair<string,int> pair in dict2)
            {
                if (mergeDi.ContainsKey(pair.Key))
                {
                    mergeDi[pair.Key] += pair.Value;
                }
                else
                {
                    mergeDi.Add(pair.Key, pair.Value);
                }
            }
            return mergeDi;
        }
      
    }
}
相关推荐
暖馒3 小时前
Modbus应用层协议的深度剖析
网络·网络协议·c#·wpf·智能硬件
m0_736919103 小时前
C++代码风格检查工具
开发语言·c++·算法
2501_944934733 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
黎雁·泠崖4 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
2301_763472465 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
TechWJ5 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
lly2024066 小时前
C++ 文件和流
开发语言
m0_706653236 小时前
分布式系统安全通信
开发语言·c++·算法
寻寻觅觅☆6 小时前
东华OJ-基础题-104-A == B ?(C++)
开发语言·c++
刘欣的博客6 小时前
C# CS架构程序发版升级的走数据库方案
c#·单文件升级自己的方式